- 448 名前:デフォルトの名無しさん mailto:sage [2019/02/11(月) 14:56:36.09 ID:0TxoCFW6.net]
- >>444
正しくは、次のようにアクセス制御のための「public :」を書かないといけない。 class CMyClass { protected : BYTE *m_pBuf; // 高速化のため、自動的には初期化はされないのでコンストラクタで初期化する。 public : CMyClass() { // コンストラクタ m_pBuf = NULL; // メモリをまだ未割り当てであることをマークするためにこうしておく } ~CMyClass() { // デストラクタ if ( m_pBuf != NULL ) { delete [] m_pBuf; // メモリの解放 } } } なお、必要に応じて、コンストラクタの中で、m_pBuf = new BYTE [xxx]; のように書いても良い。 それと、BYTE は、「オブジェクト」ではないので、あなたの書いているような場合には、 BYTE *m_pBuf の部分を CSomeObject m_pObj; のように変えて、m_pObj = new CSomeObject; のようにする。
|

|