表达式无法识别函数c ++中的指针

时间:2016-04-20 01:09:14

标签: c++ class pointers c++11 parameters

我在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];
    }
}

从我所学到的一切,这应该有效。但是我收到一个错误“明显调用的括号前面的表达式必须具有(指针)函数类型。

我以为我已经有了点对功能类型......

有人可以帮助我解决我的错误吗?

1 个答案:

答案 0 :(得分:3)

float

arraySize = obj.arraySize(); 是一名班级成员。它不是一种类方法。这应该是:

arraySize