在写C++程序时,当代码写在不同的文件中时,怎么实现相互间的调用呢?举一个例子,现在有两个.cpp文件,分别为:main.cpp 和 func.cpp。在main.cpp中我们写了主函数,在func.cpp中写了功能函数,代码分别如下:
main.cpp:
如何在main文件中调用func中的函数?方法很简单,直接在main.cpp中include文件func.cpp。
main.cpp改写成:
include后“ ”的意思是优先在当前目录寻找文件,< >表示只在系统根目录寻找。程序直接运行就可以了。不出意外的话就会出个意外,直接提示错误:
Error LNK2005 “int __cdecl min(int,int)” (?min@@YAHHH@Z) already defined in func.obj
经过调查,可能是Visual Studio编译器识别错误导致的。解决办法如下:
让编译器忽略编译func.cpp文件。在Visual Studio中操作有:
1.右击func.cpp文件,设置属性中的编译排除选“是”
现在运行程序,就不会报错了。
调用func.cpp文件可以通过头文件的方式调用,这样就不会出现之前的报错。首先创建一个头文件func.h来声明在func.cpp中构建的函数。
func.h:
func.cpp:
main.cpp:
这样main.cpp就可以调用func.cpp中的函数了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/150300.html