头文件f.h有一个函数并有对应的f.cpp文件实现,为什么另一个m.cpp文件调用的时候必须是#include "f.cpp"而不能是#include"f.h"

SuperBeauty 2017-03-22 11:11:30
f.h
int foo(int i,int j);

f.cpp
#include "f.h"
int foo(int i,int j)
{
return i*j;
}

m.cpp
#include "iostream.h"
#include "f.cpp"
int main()
{
int i=foo(3,4);
cout<<i<<endl;
return 0;
}

三个文件均放在一个文件夹下,这样可以,但是在m.cpp中用#include “f.h”不行,求教为什么,谢谢各位了
...全文
242 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
SuperBeauty 2017-03-24
  • 打赏
  • 举报
回复
引用 6 楼 liangbingbing123 的回复:
添加到当前项目中,编译的时候没有编译进去,工程配置的问题。
嗯,谢谢了
SuperBeauty 2017-03-24
  • 打赏
  • 举报
回复
引用 6 楼 liangbingbing123 的回复:
添加到当前项目中,编译的时候没有编译进去,工程配置的问题。
是的,多谢多谢
SuperBeauty 2017-03-24
  • 打赏
  • 举报
回复
引用 5 楼 qq423399099 的回复:
你是不是工程创建有问题啊。 按照下面这个链接你重新试一下:http://wenku.baidu.com/link?url=DZRizn6dGPGMkmLskDfD6XqgE_zQi4qK3zZuTJwT_1ba07459yECebuPdvKcp_A0W5-Br6-xcCRQJXQIhGAHYLDIBJkmQwi2bERwGReheJG
对的对的,没有创建工程,直接新建头文件和源文件了谢谢啦
AlbertS 2017-03-24
  • 打赏
  • 举报
回复
#include "f.h"才对 然后把f.cpp和f.h都添加到当前项目中,编译的时候没有编译进去,工程配置的问题。
初见_冰 2017-03-24
  • 打赏
  • 举报
回复
添加到当前项目中,编译的时候没有编译进去,工程配置的问题。
小灸舞 2017-03-24
  • 打赏
  • 举报
回复
SuperBeauty 2017-03-24
  • 打赏
  • 举报
回复
引用 2 楼 qq423399099 的回复:
显然#include"f.h"才是对的
如果你#include"f.h"不对的话,只能说你编译链接有问题,没有把f.cpp一起编译进去

我就把它们都放同一个文件夹了,现在是这个样子,您看看要改些什么

SuperBeauty 2017-03-24
  • 打赏
  • 举报
回复
引用 1 楼 cherish_ff 的回复:
我看你写的是 include "f.cpp"

是的,我写的是include"f.cpp",这样可以运行,写"f.h"不行

小灸舞 2017-03-22
  • 打赏
  • 举报
回复
显然#include"f.h"才是对的
如果你#include"f.h"不对的话,只能说你编译链接有问题,没有把f.cpp一起编译进去
ESMGAL 2017-03-22
  • 打赏
  • 举报
回复
我看你写的是 include "f.cpp"

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧