我在class NumberArray
中有NumberArray.h
class NumberArray
{
private:
double *aPtr;
int arraySize;
public:
NumberArray(NumberArray &);
NumberArray(int size, double value);
NumberArray() { if (arraySize > 0) delete[] aPtr; }
void print() const;
void setValue(double value);
};
在我的cpp文件
NumberArray.cpp
中,我定义了构造函数NumberArray(NumberArray &)
通过
NumberArray::NumberArray(NumberArray &obj)
{
arraySize = obj.arraySize();
aPtr = new double[arraySize];
for (int index = 0; index < arraySize; index++)
{
aPtr[index] = obj.aPtr[index];
}
}
据我所知,这应该行得通。但是,我收到一个错误“明显调用的括号前面的表达式必须具有(pointer-to-)函数类型。
我以为我已经有了指向功能的类型...
有人可以帮我解决我的问题吗?
最佳答案
arraySize = obj.arraySize();
arraySize
是类成员。这不是一个类方法。应该是:arraySize = obj.arraySize;
关于c++ - 表达式无法识别函数C++中的指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36732108/