我正在尝试用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]);
^
这有什么意义吗?我曾尝试过很多关于班级建设的例子,看不出我做错了什么。
答案 0 :(得分:5)
C ++区分大小写。将TaaP改为Taap
答案 1 :(得分:4)
您的问题是该类名为TaaP
,您的构造函数名为Taap
(请注意大小写)。构造函数应该与它们所属的类具有完全相同的名称。