我目前正在使用C++入门。对于当前正在执行的作业,我必须在一个头文件中定义许多类。我不确定我是否做对了。这是我正在尝试做的示例。
//classOne.h
class classOne{
public:
classOne();
~classOne();
class classInsideClass{
public:
classInsideClass
void hello();
void print();
};
}
(我已跳过此示例中的一些代码,例如classOne的构造函数)
//classOne.cpp
classOne::classInsideClass::classInsideClass(){}
classOne::classInsideClass::hello(){
cout << ""Hello <<endl;
}
//main.cpp
classOne callingClass;
callingClass.classInsideClass.hello;
我已经在classOne的头文件中定义了一个类。我已经在classOne的cpp中为此classInsideClass创建了函数。这是正确的说法吗,classInsideClass属于classOne,还是我不允许这样做?
我在main.cpp中正确调用classInsideClass的函数吗?当我尝试运行此命令时,出现以下错误;
如果我不尝试在main.cpp中调用classInsideClass的函数,则可以正常运行。
提前致谢。
最佳答案
classInsideClass
是classOne
内部的类型,而不是对象。如果要调用classInsideClass::hello()
,则需要一个classInsideClass
的实际实例:
classOne::classInsideClass callingClass;
callingClass.hello();
关于c++ - 头文件中的C++类定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9765568/