大家平时怎么整理自己常用的公共C/C++源代码?
相信大家开发时间长了之后,都会有一些常用的C/C++代码,比如一些重复使用的算法,字符串操作,一些系统接口的封装等等。这些函数一般都怎么整理起来,放在公共的h/Cpp文件中吗?还是专门写一个静态lib库或是DLL?
我是这样写的,比如把不同的函数整理到不同的h/CPP文件中,比如
CmnFile.h+CmnFile.cpp
CmnString.h+CmnString.cpp
CmnProcess.h+CmnProcess.cpp
。。。
接着写一个Common.h把这些头文件的包括进来
#include "Common\CmnFile.h"
#include "Common\CmnString.h"
#include "Common\CmnProcess.h"
。。。
然后写一个Common.cpp把这些实现文件的包括进来(别觉得奇怪,编译器也是支持包括cpp文件的)
#include "Common\CmnFile.cpp"
#include "Common\CmnString.cpp"
#include "Common\CmnProcess.cpp"
。。。
以后我如果要在项目中引用这些公共代码的话,就只要添加Common.h和Common.cpp就可以随意使用里面的公共代码了!!
本来以为这样很好,后来才发现直接包括cpp文件会有一个致命的缺点:宏定义的范围会扩大到整个Common.cpp!比如你在CmnFile.cpp里定义的宏,在CmnProcess.cpp里也能生效,导致了宏重复定义之类的问题(还有其他一些问题)。
但是我并不太想专门新建一个静态Lib库,这样太麻烦了。
所以请大家都来说说,有什么更好的办法整理自己常用的函数库?