我最近一直在用C++编写,我对.cpp
vs .h
感到困惑 - 何时使用它们以及应该如何使用它们。我一直在阅读,你应该把函数定义放在一个单独的.cpp
文件中,并且头文件应该用于声明,但是如何使用单独的.cpp
文件?我是#include
它还是什么?我正在寻找关于.h
和.cpp
的说明,以及应该在何处以及如何包括单独的.cpp
文件。.cpp vs .h和我应该在哪里放置函数定义
-1
A
回答
0
您应该使用的.h用于函数原型和数据类型的文件声明以及用于预处理器指令和用于定义的.cpp文件。例如,test.h
可能看起来像
#define CONSTANT 123 // pre-processor directive
void myfunction(char* str);
和你test.cpp
可能看起来像
#include <stdio.h>
#include "test.h"
int main(int argc char **argv)
{
myfunction("Hello World");
return 0;
}
void myfunction (char* str)
{
printf("%s and constant %d", str, CONSTANT);
return;
}
+2
你可能想提到'内联函数(隐式和显式)和'模板'。 – Deduplicator 2015-01-31 22:38:50
0
通常类声明进入(.h)头文件,实现进入.cpp文件。
您在cpp文件的头文件,所以所有的功能将被认可,你应该记住使用的#ifndef头文件,以避免错误(包括循环)
相关问题
- 1. 应该在哪里放置自定义查询函数?
- 2. 我应该在哪里放置在FBConnect
- 3. 我应该在哪里放置在phabricator
- 4. 我应该在哪里放置自定义的.d.ts文件?
- 5. Gradle android:我应该在哪里放置自定义任务?
- 6. 我应该在哪里放置索引?
- 7. 我应该在哪里放置DLL?
- 8. 我应该在哪里放置ANNOTATE_ITERATION_TASK?
- 9. 我应该在哪里放置.htaccess?
- 10. 我应该在哪里放置scriptmanager
- 11. MEF:我应该在哪里放置CompositionContainer?
- 12. 我应该在哪里放置docker-compose.yml
- 13. 我应该在哪里放置界面?
- 14. 我应该在哪里放置代码?
- 15. Laravel - cart mvc - 我应该在哪里放置函数?
- 16. 我应该在哪里放置util函数 - OOP最佳实践
- 17. 我应该在哪里放IBOutlets和IBActions?
- 18. 我应该在哪里定义和设置这些样式
- 19. 我应该在哪里定义枚举?
- 20. 在ANDROID应用我应该在哪里放置数据库表
- 21. 应该在哪里放置配置?
- 22. CodeIgniter:我应该把自定义utils放在哪里?
- 23. 我应该在哪里定义我的NinjectModule和我的工厂?
- 24. 应该在哪里放置“全局”Symfony函数?
- 25. 我应该总是将我的文件分割成声明(.h)和定义(.cpp)
- 26. JavaScript - 我应该在哪里放置“var”以获取特定值
- 27. 我应该在哪里放置我的函数来包装Doctrine查询?
- 28. 我应该在哪里将函数放入管道文件中?
- 29. Symfony 3.3 - 我应该在哪里放置CSS和JS文件?
- 30. 我应该在哪里放置AngularJS工厂和服务?
你的意思正常功能或模板? – wimh 2015-01-31 21:58:57
另请参见[头文件中的C++代码](http://stackoverflow.com/questions/583255/c-code-in-header-files/)和[将代码拆分为头文件/源文件](http:// stackoverflow.com/questions/2584856/splitting-code-into-headers-source-files)和[为什么在C++中有头文件和'.cpp'文件](http://stackoverflow.com/questions/333889/why - 具备头-文件和 - CPP-文件-在-C)。 – 2015-02-01 07:00:59