c ++ init char指针为null

era*_*zap 1 c++

我在我的类中有一个指向char的指针,该指针稍后将用于引用我不知道的大小的char数组,因此我想将它作为char*引用它

我似乎无法为其赋值null.

它仅显示为Bad Ptr异常

我怎么能初学它所以在我的ctor我可以为"char数组"分配空间这是我想要完成的,如果用c写的话似乎很简单.

     ctor
     {
          if( m_data != NULL )
                   m_data = new char[m_size];
     }
Run Code Online (Sandbox Code Playgroud)

Mic*_*eyn 6

不要测试未初始化的数据是否为NULL,只需:

MyClass::MyClass(): // ctor
  m_size(/* something appropriate */), // Note: m_size must precede m_data in the
                                       //       class' definition
  m_data(new char[m_size])
{
}
Run Code Online (Sandbox Code Playgroud)