类代码文件的组织,到底改怎么安排,
比如说有头文件,里面放的是类的定义,以及 一个成员函数的声明:1.ceshi.hpp
程序代码:
#include<iostream> using namespace std; class ceshi { public: ceshi(int x):ce(x){ } void out(); private: int ce; };
成员还是ceshi的实现放在另外一个cpp中
2.ceshi.cpp
程序代码:
#include<iostream> #include"ceshi.hpp" using namespace std; void ceshi::out(){ cout<<ce; }
最后是主程序
3.main.cpp
程序代码:
#include<iostream> #include"ceshi.hpp" using namespace std; int main(){ ceshi ll(5); ll.out(); return 0; }
根据书上的说法我觉得是这样安排的,但是无法编译成功。
还有一种是在头文件这样修改
修改后:
程序代码:
#include<iostream> using namespace std; class ceshi { public: ceshi(int x):ce(x){ } void out(); private: int ce; }; #include"ceshi.cpp"
在最后加上成员函数定义的源文件。
另外成员函数定义的文件里不再包括头文件
这样运行是正确的。
但是感觉跟书上讲的不一样。
求前辈解答,我看是的是C++primer