C++ 在头(.h)中声明构造函数,然后在类文件(.cpp)C++;
如果有人能说出来,我会很感激的。 我认为可行的示例(假设存在所需的include语句): 如果要提供构造函数的定义,必须在类中声明构造函数。你只是在做第二件事 另外,原始的类定义包含一些错误:类名后不需要括号,最后一个大括号后需要分号C++ 在头(.h)中声明构造函数,然后在类文件(.cpp)C++;,c++,constructor,C++,Constructor,如果有人能说出来,我会很感激的。 我认为可行的示例(假设存在所需的include语句): 如果要提供构造函数的定义,必须在类中声明构造函数。你只是在做第二件事 另外,原始的类定义包含一些错误:类名后不需要括号,最后一个大括号后需要分号 class someclass { someClass(); // Here you DECLARE your constructor }; ... someclass::someclass() // Here you DEFINE your cons
class someclass
{
someClass(); // Here you DECLARE your constructor
};
...
someclass::someclass() // Here you DEFINE your constructor
{
...
}
标题:
//.h file
class someclass
{
someclass();
}; // <-- don't forget semicolon here
/.h文件
上课
{
someclass();
}; // someclass.h文件
#ifndef SOME_CLASS_H
#define SOME_CLASS_H
class someclass
{
public:
someclass(); // declare default constructor
private:
int member1;
};
#endif
someclass.cpp
someclass::someclass() // define default constructor
: member1(0) // initialize class member in member initializers list
{
//implementation
}
从什么时候开始,类在大括号之前有括号了?@chris:看起来OP的意思是,作为构造函数声明…@BillyONeal正确。我最困惑的是,我有一个具有多个参数的构造函数,它工作得很好。@BillyONeal,哦,类
部分让我措手不及。这难道不是#包括“someclass.h
[没有大写C]
#ifndef SOME_CLASS_H
#define SOME_CLASS_H
class someclass
{
public:
someclass(); // declare default constructor
private:
int member1;
};
#endif
someclass::someclass() // define default constructor
: member1(0) // initialize class member in member initializers list
{
//implementation
}