使类变量在其他范围内可用?C++

Kra*_*ffs 2 c++ arrays variables class scopes

在我的类的构造函数中,我创建了一个具有所需大小的数组,如下所示:

ArrayClass::ArrayClass(int size) 
{
    Number* nmbr = new Number[size];
}
Run Code Online (Sandbox Code Playgroud)

ArrayClass::ArrayClass()
{ 
    Number* nmbr = new Number[2];
}
Run Code Online (Sandbox Code Playgroud)

我也在标题中指定了它

Number* nmbr;
Run Code Online (Sandbox Code Playgroud)

虽然数组本身的创建工作,我似乎无法在构造函数之外访问它.似乎每当我离开构造函数时,变量都会从内存中释放出来.如何防止这种情况,以便在调用类中的其他函数时可以使用变量?

Luc*_*ore 6

不要创建新变量.nmbr您的构造彼此和一个在标题不同.

如果你必须使用全局(想想这样做三次)声明它extern,在一个TU中定义它,并且只是使用

 nmbr = new ArrayClass[2];
Run Code Online (Sandbox Code Playgroud)

在你的构造函数中.

不要忘记清理记忆或三个规则.