我是 C++ 的初学者,对标头中声明的 const 指针的初始化感到困惑。仅举一个例子,我的标题中有一个结构和一个类,例如:
/* header file.h */
typedef struct A{ ... } A;
class myClass{
protected:
A *const myPtrA;
}
并且想实例化myPtrA的内容,比如在构造函数中,知道A是一个由子结构组成的相当复杂的结构,需要动态实例化:
/* source file.cpp */
#include file.h
myClass::myClass() {
A *tmpA = new A;
*myPtrA = *tmpA;
}
这是初始化我的 const 指针 myPtrA 的好方法吗?并且在每个新调用都需要一个专用的删除调用的范围内,我可以在 *myPtrA = *a; 行之后立即删除我的指针 tmpA 吗?没有丢失 myPtrA 指向的内容的风险?
提前感谢您的时间(请原谅我的英语;))
qroh