私は C++ の初心者で、ヘッダーで宣言された const ポインターの初期化について混乱しました。一例を挙げると、ヘッダーに次のような構造とクラスがあります。
/* header file.h */
typedef struct A{ ... } A;
class myClass{
protected:
A *const myPtrA;
}
また、A が部分構造で構成される非常に複雑な構造であり、動的にインスタンス化する必要があることを知っている場合、コンストラクターなどで myPtrA のコンテンツをインスタンス化する必要があります。
/* source file.cpp */
#include file.h
myClass::myClass() {
A *tmpA = new A;
*myPtrA = *tmpA;
}
これは、const ポインター myPtrA を初期化する良い方法ですか? また、新しい呼び出しごとに専用の削除呼び出しが必要な範囲で、行 *myPtrA = *a; の直後にポインター tmpA を削除できますか? myPtrA が指すコンテンツを失うリスクはありませんか?
お時間をいただきありがとうございます(そして私の英語を許してください;))
ああ