C++指针数组的问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 03:58:43
CTypePtrArray<CPtrArray,CBaseElement *>* m_papEle;
CTypePtrArray<CPtrArray,CBaseElement *>m_papEle;
CTypePtrArray<CPtrArray,CBaseElement *>& m_papEle;
这三个有什么区别呢?
CTypePtrArray<CPtrArray,CBaseElement *>* m_papEle;
CTypePtrArray<CPtrArray,CBaseElement *>& apEle=* m_papEle;
这里apEle是指针所指内容的引用还是指针所指内存地址的引用?

1 申明一个指向CTypePtrArray<CPtrArray,CBaseElement *>的指针,这仅仅是个指针不包含对象
2 定义一个CTypePtrArray<CPtrArray,CBaseElement *>类型的对象,可以直接使用
3 定义一个CTypePtrArray<CPtrArray,CBaseElement *>引用,你这样写也是不对的,引用必须要指向一个合法的对象,所以说你至少写成下面这样,才能编译通过:
CTypePtrArray<CPtrArray,CBaseElement *> m_papEle1;
CTypePtrArray<CPtrArray,CBaseElement *>& m_papEle2=m_papEle1;

谢谢

下面三个有什么区别呢?
T *t;
T t;
T &t = t;
明白吗?你的问题与指针数组完全没有关系。