今天打开自己以前写代码突然觉得在main函数中如果要用的很多自己实现的函数,如果把它们都放在main.cpp文件中太臃肿了。调试起来特别不方便。能不能把这些自己实现的函数放到另外一个文件中呢?
可是又不能把这些函数放在.h文件中。因为书上说.h文件中最好只放结构体、类等的申明,函数实现最好放在.cpp文件中。好吧那我就把这些函数放到一个.cpp文件中吧。所以我就新建了一个2.cpp文件把自己实现的函数都放在里面。然后把这个2.cpp文件放在和main.cpp文件的同目录下。在main.cpp中#include"2.cpp".重新编译运行,一切正常。看似成功了。
关掉这个工程后,我再次打开它想修改一下那些自己的实现的函数。突然发现在VC6.0工程Sourcs File目录下只有main.cpp没我2.cpp,于是我点右键添加2.cpp文件到Siurce File目录下。再次编译,出错了。出现了重定义错误。报错如下:
这怎么可能呢?怎么会出现重定义错误呢?我明明在main.cpp文件中对2.cpp中的函数只字未提。那之前没有将2.cpp文件添加到工程目录下就没错呢?
看