无法在C ++类中创建构造函数

时间:2014-02-17 00:02:25

标签: c++ class constructor compiler-errors declaration

我正在尝试用C ++创建一个类(我很长时间没用过类!)我试图用以下方式创建一些构造函数:

#ifndef TAAP_HEAD
#define TAAP_HEAD

class TaaP
{
public:
  // default cosntructor
  Taap();

  // constructor with xyz
  Taap(double xyz[3]);

private:
  double m_xyz[3];
  double m_Rho;
  double m_GradRho[3];
  double m_HessRho[3][3];
  double m_EigenValues[3];
  double m_EigenVectors[3][3];
};
#endif

其中Taap()只会将xyz分配给{0.0, 0.0, 0.0},但Taap(double xyz[3])将允许用户输入自己的起始坐标。

我在编译时遇到的错误是:

hdr_taap.h:9:8: error: ISO C++ forbids declaration of ‘Taap’ with no type [-fpermissive]
   Taap();
        ^
hdr_taap.h:12:21: error: ISO C++ forbids declaration of ‘Taap’ with no type [-fpermissive]
   Taap(double xyz[3]);
                     ^

这有什么意义吗?我曾尝试过很多关于班级建设的例子,看不出我做错了什么。

2 个答案:

答案 0 :(得分:5)

C ++区分大小写。将TaaP改为Taap

答案 1 :(得分:4)

您的问题是该类名为TaaP,您的构造函数名为Taap(请注意大小写)。构造函数应该与它们所属的类具有完全相同的名称。