C++在头文件中定义了一个类。声明了成员函数。在另一个cpp文件中定义了这些成员函数。

那我在main中使用这个类的时候。为什么会自动使用cpp文件中的定义,它怎么知道这个cpp文件中有类的定义

设文件
class.h
class.cpp(第一行 #include "class.h" )
main.cpp (第一行 #include "class.h" )

在 main 中使用 这个类的时候并不需要 使用 class.cpp 文件里的定义,而实际是在使用 class.h 里的声明。不信的话你在 class.cpp 里面加一个新类 teacher 的定义,但在 class.h 里不声明,然后你看看在main.cpp 里能不能用 teacher 类。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-04
源文件内容如下:#include"myclass.h",就在这里知道的。编译器会将myclass.h的内容展开并和这个源文件的内容一起编译本回答被提问者采纳

...声明了成员函数。在另一个cpp文件中定义了这些成员函数。_百度...
main.cpp (第一行 #include "class.h" )在 main 中使用 这个类的时候并不需要 使用 class.cpp 文件里的定义,而实际是在使用 class.h 里的声明。不信的话你在 class.cpp 里面加一个新类 teacher 的定义,但在 class.h 里不声明,然后你看看在main.cpp 里能不能用 teacher 类。

...我在.h中定义了类,在类中声明了构造函数,在.cpp中实现构造函数,编译...
你把.h文件和.cpp文件添加到工程了吗?或者也可直接这样,在你的主程序中,直接 #include"XXXX.cpp",然后使用你定义的该类即可。

如何在C++头文件中定义函数,然后在源文件中使用
\/*在text。h头文件中进行声明*\/ include using namespace std;void display(int,int);\/*使用该函数来实现输出*\/ \/*在texxt。cpp中进行定义,注意第一行,很重要因为不是c++标准库中的头文件,所以不能用>,而要用""括起头文件*\/ include "text.h"void display(int x,int y){ cout<<"A=...

...文件声明定义?我在头文件中声明,在另一个cpp文件定义,vc报错? 比如...
class person{int a;public:person(int a = 0);\/\/} -->缺分号};head.cpp include "head.h"\/\/引用头文件person::person(int a){\/\/*this.a = a;(*this).a = a;\/\/或this->a = a;}main.cpp include <iostream>#include "head.h"int main(){person p(1);system("pause");retu...

c++怎么使用其他文件的类?
c++ 源代码通常是这样组织的,在头文件(*.h)里声明类定义,在*.cpp里定义成员函数的实现。这样可以在任何一个 *.cpp 里引用任何其他类定义而不会发生重定义问题。确实有一种情况会 #include "template.cpp". 定义模板的时候,同样在 template.h 定义模板类,在 template.cpp 里定义其实现。但是...

...我在一个类中明明声明了数据成员,但是在成员函数中使用这些数据成员...
是不是成员函数名字写错了,是不是定义成员函数时忘了写"类名::"这个前缀等都有可能。仔细查查。

c++中,在一个a.cpp文件里定义了一个数据结构,想在b.cpp文件里使用这个...
将数据结构声明在头文件里面,在cpp内定义,然后其他cpp文件只要包含头文件就可以使用该数据结构。

C++中对自定义函数的声明,放main内还是外,在含类的程序中,貌似只能在...
一般放在函数外,调用之前。放在哪跟有类没类没有直接联系。实践中一般将函数声明、类的定义放在头文件中。而定义放在单独的源文件(.cpp)。如果有哪个源文件中用到了头文件中声明的函数或类,只需#include “***.h”将头文件包含进来。

如何在C++头文件中定义函数,然后在源文件中使用
using namespace std;void display(int,int);\/*使用该函数来实现输出*\/ \/*在texxt。cpp中进行定义,注意第一行,很重要因为不是c++标准库中的头文件,所以不能用<>,而要用""括起头文件*\/ include "text.h"void display(int x,int y){ cout<<"A="<<x<<"B="<<y<<endl;} \/*在主...

C++中的文件引用问题#include...
一般的形式是:ifnedf A define A endif 可以一个cpp文件对应一个.h文件 .h文件中包括了你这个cpp文件需要对外使用的函数 其他cpp如果需要用你的cpp中的函数 直接引入你所写的h就可以了 引用的顺序 实际上是无所谓的 .h文件中特别要注意 只写声明 不要定义 所以 你对c1.h的写法 是有一定...

相似回答