问题描述
- 关于在c++创建类的问题
-
类的声明和实现应该分开写还是合在一起写?
比如说我把类的声明写在头文件上,把类的实现放在另外一个cpp文件上,到时候我在主程序调用这个类时,它会自动找到类的实现吗?
解决方案
当然可以找到。这个找的过程是连接器完成的。你有函数的原型,编译器就会产生一个符号。
解决方案二:
分开写好一点。
编译的时候,分别编译每个cpp文件成为.o文件,
最后链接每个.o文件,生成一个可执行的二进制文件
这个二进制文件已经包含了需要接口的实现的二进制。所以不存在找到找不到。
另,还有一个叫动态库的东东,在链接的时候不会放到可执行文件中去,那要怎么办呢?
就要让这个可执行文件去找了!即在执行文件之前,要设置动态库的查找路径。
比如在linux下就是配置LD_LIBRARY_PATH,通过这个路径找到其实现。
解决方案三:
要在cpp文件中include头文件
解决方案四:
会,但你用vc++的话记得添加工程,还要放到同一文件夹下
解决方案五:
会的,Cpp文件里会把它的头文件include进来的。
解决方案六:
会的。只要你在.cpp文件加上你写的头文件就可以
解决方案七:
同样文件名的.h和.cpp文件并没有必然联系。我们一般将声明放在头文件,实现放在cpp文件。
cpp文件包含了声明所在的头文件,编译器是可以认识到函数声明对应的符号的。
解决方案八:
会的一楼说得对,cpp里要include头文件,另外cpp里的实现可以帮助你开发lib的时候把重要算法加密,你只要给别人lib和头文件就可以了。
解决方案九:
会的,.h 和 .cpp 就是一个声明,一个实现,但是不要忘了要将.h文件 include进来
解决方案十:
在头文件里面写上类的声明,cpp文件里面写定义,编译器会自动链接,包括头文件就可以直接调用
时间: 2024-11-01 07:40:29