主函数怎么对用另一个文件夹的函数问题

lty369963 2012-10-09 04:35:25
我做《c++primer练习》8.3,8.4时,8.3是get()函数,8.4要求将8.3编写的get函数的声明放在文件get.hpp中,起定义放在get.cpp中,但我主函数无法调用,怎么办?
//get.cpp
#include<iostream>
#include<get.h>
using namespace std;

std::istream& get(std::istream& in)
{
int ival;
while(in>>ival,!in.eof())
{
if(in.bad())//出现系统故障
throw std::runtime_error("IO stream corrupted");
if(in.fail())//出现可恢复错误
{
std::cerr<<"bad data, try again";//提示用户
in.clear();//恢复流
in.ignore(200,' ');//跳过类型非法的输入项
continue;

}//if
//读正常
std::cout<<ival<<" ";
}//while

in.clear();
return in;
}

//get.h
#include <iostream>
using namespace std;
std::istream& get(std::istream& in);


//main
#include"get.h"
#include<iostream>
using namespace std;

int main()
{
double dval;
get(cin);
cin>>dval;
cout<<dval<<endl;
return 0;
}
get.h和get.cpp在同一个文件夹,main在另个文件夹,怎么调用?
...全文
162 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lty369963 2012-10-09
  • 打赏
  • 举报
回复
这两种方法都不好用,是不是我的函数声明不对?
liuzhanchen1987 2012-10-09
  • 打赏
  • 举报
回复
你要把get.h和get.cpp拷贝到main的文件夹中,然后再在头文件点右键添加现有项,把get.h添加进去,在cpp文件中添加现有项把get.cpp添加到工程中。(这是比较容易理解的方法)
mujiok2003 2012-10-09
  • 打赏
  • 举报
回复
1. compile
在main.cpp中,包含头文件 或 申明get. 编译main.cpp后得到main.obj, 编译get.cpp得到get.obj
2. 连接
把get.obj和 main.obj连接成 main.exe

flyound 2012-10-09
  • 打赏
  • 举报
回复
include "..\目录\get.h" 用目录形式包含就可以了.\为当前目录,..\为上一级目录,你也可以在工程里面设置包含的引用文件目录

64,644

社区成员

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

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