codeblocks写c++工程,在主函数用#include包括写的类 有时候用.h即可,有时候必须用.cpp包括那个类

codeblocks写c++工程, 类成员函数在.h中声明,在cpp中详写,在主函数用#include包括写的类 有时候用.h即可,有时候必须用.cpp包括那个类,否则就会有就有undefined reference 为什么,又怎么解决?谢谢

除了模板类,如果把类写成.h加.cpp形式,都是主要包含.h就可以了

如果是模板类,由于不能写成两个文件,需要包含.cpp
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-04-27
不知道你具体问啥,说的有点乱,我假装看懂了你的问题说一下吧,
在C++中,当你要使用一个类,在使用之前这个类必须已经被定义了。
否则就会提示你的那个问题:undefined reference(引用没有被定义)
第2个回答  2015-12-06
有可能你在 cpp文件中写的某些函数,并没有在h文件中声明。追问

并不是这个原因。。

写C++程序用#include<iostream.h>可以,但用#include<iostream> using na...
include<iostream> using namespace std;int main(void){ cout<<"Hello World!"<<endl;return 0;} 这段还会报错就是编译器问题

如何用codeblocks编写C++程序
在弹出的project选择窗口,选择console application -> 在工程向导第一个窗口选择语言C -> 输入工程名称信息(包括设定工程目录) -> next ->finish(这个画面还有机会选择编译器)自动产生main.c:include <stdio.h> include <stdlib.h> int main(){ printf("Hello world!\\n");return 0;} 4,编译运...

如何使用CodeBlocks编译c++和c语言
打开CodeBlocks之后,直接在起始页选择:新建工程(create a new project),或者在文件菜单里面选择 新建 工程 这时会出现新建对话框,选择“控制台应用程序”项,按确定(go)接下来选择是用C还是C++ 点下一步,然后就确定文件名、位置等,继续下一步 最后选择编译器和编译生成位置,一般默认就行,单击完...

C++用include包含文件的时候,为什么单独包含一个cpp文件可以成功运行...
因为你在 main.c 中 #include 了 a.cpp 和 b.cpp,这样相当于在 main.c 里面实现了一次 add() 和 sub() 函数,然后在 a.cpp 和 b.cpp 里面又同样存在这样的函数,于是就出现了函数定义了两次的问题。我怀疑你设置 codeblocks 不编译 a.cpp 了,所以 add() 函数没有报出这个错误。你可以...

如何用codeblocks编写C++程序?
1、首先打开CodeBlocks软件,选择新建项目,如下图所示。2、接下来在弹出的新建界面,我们选择左侧的“文件”选项,然后选择右侧的“C\/C++source”选项,如下图所示。3、然后会进入选择语言的界面,选择“C”即可,如下图所示。4、接下来,需要设置文件路径已经文件名,我们点击输入框右侧的按钮,如下图...

如何用CodeBlocks写c语言程序
打开CodeBlocks之后,直接在起始页选择:新建项目(create a new project),或者在文件菜单里面选择 新建 项目(Project)这时会出现新建对话框,选择“控制台应用程序”项,按确定(go)接下来选择是用C还是C++ 点下一步,然后就确定项目的位置及文件名等,继续下一步 最后选择编译器和编译生成位置,如果你...

code#blocks中C语言不能用#include<algorithm>吗?
那个是c++的写法,c语言中用qsort()快排。

Codeblocks写C++类,创建完头文件后在怎么写?小白在此谢过!
跟VC一样。。。将要包含的头文件,预处理,常量定义,类声明,成员声明写在头文件里,在cpp文件里包含此头文件,再对定义的类的成员进行实现。。如头文件里 class a { public:int b(int c);} CPP里实现函数时写 int a::b(int c){ } 当然也可以直接都写在CPP里,而不用头文件。。。

code blocks怎么样导入一个已经原来已经存好的项目?每次打开都只能打开...
文件->导入工程,选dev-c++工程 选择所有文件,然后找到要打开工程的里的cbp后缀文件,打开它就行了。

codeblocks里C++工程我包含了头文件依然不能,找不到那个自定义的...
很显然你 hs.cpp中漏掉 #include"hs.h" 包含头文件了。所以在main.cpp中找到了声明,却找不到该函数的定义,虽然你确实在hs.cpp中已经定义了。

相似回答