| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 940 人关注过本帖
标题:请教关于重载>>运算符
只看楼主 加入收藏
注册好难啊
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-1-18
收藏
 问题点数:0 回复次数:7 
请教关于重载>>运算符
头文件:
#include <iostream.h>
class String;
istream& operator>>( istream&, String& );
class String{
...

cpp文件:
#include "(头文件名)"
#include <iomanip>
using namespace std;

inline istream& operator>>( istream &is, String &str )
{
const int limit = 4096
char inBuf[ limit + 1 ];
is >> setw( limit ) >> inBuf;
str = inBuf; //=号重载过了
return is;
}

在VC6上编译时提示:error C2872: 'istream' : ambiguous symbol;把#include <iomanip>
,using namespace std和setw( limit )去掉编译才能通过;但是连接就出错了,如果把CPP文件中的内容全部放到头文件里面才能运行起来.
哪位大哥帮忙解释一下.多谢!
搜索更多相关主题的帖子: 运算符 重载 
2006-01-18 17:58
woodhead
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:1124
专家分:0
注 册:2005-7-18
收藏
得分:0 

cpp文件

的inline去掉试试


2006-01-18 18:12
注册好难啊
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-1-18
收藏
得分:0 
试过了,没用~~~试了很多方法都不行,网上也找不到类似问题,希望有牛人帮忙解决!
2006-01-18 19:43
unicorn
Rank: 4
等 级:贵宾
威 望:14
帖 子:1066
专家分:0
注 册:2005-10-25
收藏
得分:0 
恩... ...是挺怪 应该可以的 既然对输出流重载了 对应的精度操作应该可以执行啊

你在cpp里再加个<iostream>头文件 试试吧

unicorn-h.spaces. ◇◆ sava-scratch.spaces.  noh enol ! pue pu!w hw u! shemle aq ll!m noh 
2006-01-18 21:21
olivezhang
Rank: 1
等 级:新手上路
帖 子:223
专家分:0
注 册:2005-9-14
收藏
得分:0 

把这句去掉:using namespace std;
头文件加上".h"
#include "(头文件名.h)"
#include <iomanip.h>

谷底深深行 ,峰顶漫漫步......@_@
2006-01-19 18:17
love_me
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-12-29
收藏
得分:0 

Visual C++ 概念:生成 C/C++ 程序

编译器错误 C2872“symbol”: 不明确的符号
编译器无法确定要引用哪个符号。
下面的示例生成 C2872:
// C2872.cpp
namespace A
{
int i;
}

using namespace A;
int i;
void z()
{
::i++; // ok
A::i++; // ok
i++; // C2872, ::i or A::i?
}


灌水无罪! 顶贴有理! <0_0>
2006-01-19 19:52
love_me
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-12-29
收藏
得分:0 

为什么那么多人不去翻MSDN呢?????????????????????????????????????????????????????????????????????????????????????????????????


灌水无罪! 顶贴有理! <0_0>
2006-01-19 19:54
注册好难啊
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-1-18
收藏
得分:0 
多谢大家!
第一次知道MSDN里还可以查错误类型...
2006-01-19 21:51
快速回复:请教关于重载>>运算符
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017113 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved