为何如此多的warning?

firecityplans 2009-04-23 04:37:57
写如下程序,不知为何如此多达175个警告,警告在最后面还请大侠们指示!

#include < iostream >
#include < vector >
#include < algorithm >
#include < map >
#include < set >
#include < fstream >
#include < iterator >
#include < string >
using namespace std;

int main()
{

ifstream ifile( "input.txt" );
if( !ifile )
{
cerr<< " !! unable to open the necessary files. \n";
return -1;
}

string tword;
string ia[ 6 ] = { "a", "an", "or", "the", "and", "but" };


map<string,int> words;
set < string > iset;

iset.insert( ia, ia+6 );

while( ifile>>tword )
{
if( iset.count( tword ) )
continue;

words[ tword ]++;
}

map < string, int >::iterator it = words.begin();

bool ischeck = true;
string cstring;

while( ischeck )
{
cout<< " Input the word you want to check: ";
cin>>cstring;
if( words.count( cstring ) )
cout<<"it exits and the count is "<<words[ cstring ];
else
cout<<" sorry ! it is not in! ";
cout<<endl;
cout<<" do you like another word? Y \ N";
char is;
cin>>is;
if( is == 'n' || is == 'N' )
ischeck = false;
}
return 0;
}

警告见另外一贴。
...全文
184 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingkongxiaoyang 2011-05-12
  • 打赏
  • 举报
回复
使用VC6时加入“#pragma warning(disable:4786)”
也屏蔽不了。。
hiboys 2009-04-23
  • 打赏
  • 举报
回复
sorry,sun已经哦了
lingyin55 2009-04-23
  • 打赏
  • 举报
回复
比vc6版本高级一点的基本都能很好的支持
[Quote=引用 12 楼 firecityplans 的回复:]
很好,谢谢大家。解决了。再问,为什么VC++不支持这些呢?什么环境更好的支持?
[/Quote]
hiboys 2009-04-23
  • 打赏
  • 举报
回复
disable它就可以了。
所谓的std却是各自编译器厂商自己实现的,象java一样都用sun的就好了。
std在各编译器间能移植也好啊
zgjxwl 2009-04-23
  • 打赏
  • 举报
回复
呵呵。。
firecityplans 2009-04-23
  • 打赏
  • 举报
回复
很好,谢谢大家。解决了。再问,为什么VC++不支持这些呢?什么环境更好的支持?
firecityplans 2009-04-23
  • 打赏
  • 举报
回复
可是还是有一个警告的:warning C4129: 'N' : unrecognized character escape sequence
帅得不敢出门 2009-04-23
  • 打赏
  • 举报
回复
gcc编译只有一个warning
vc6嘿嘿,早就不用了。

cout <<" do you like another word? Y \ N";
改成
cout <<" do you like another word? Y / N";
liao05050075 2009-04-23
  • 打赏
  • 举报
回复
这是VC6的STL的问题。好像是函数名扩展的时候超过了长度(有点记不清了)。一般不用理会它。
直接#pragma warning(disable:4786),屏蔽它就行了
lijinfenghust 2009-04-23
  • 打赏
  • 举报
回复
vc6 stl 库比较垃圾。。。
lingyin55 2009-04-23
  • 打赏
  • 举报
回复
把#pragma warning(disable:4786)放在宏定义的最前面
或者利用下面设置
去除所有警告,在工程设置里设置警告级别。
Setting-> C/C++ -> Warning Level : None
firecityplans 2009-04-23
  • 打赏
  • 举报
回复
再有的错误有劳大侠们到博客里见,这些错误的容量太大了。
coverallwangp 2009-04-23
  • 打赏
  • 举报
回复
vc6 stl库的问题
  • 打赏
  • 举报
回复
因为你用Vc6,所以
在头文件前面加上
#pragma warning(disable:4786)
firecityplans 2009-04-23
  • 打赏
  • 举报
回复
d:\program files\microsoft visual studio\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > const ,int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::ba
sic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(29) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > >,std::allocator<int> >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,
int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::basic_string<char,std::char_traits<cha
r>,std::allocator<char> > >,std::allocator<int> >::const_iterator' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > const ,int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::ba
sic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(29) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > >,std::allocator<int> >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::set<std::bas
ic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Kfn,std::less<std
::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\set(33) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std:
:allocator<char> >,std::set<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::alloc
ator<char> > > >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(30) : see reference to class template instantiation 'std::set<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char
>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::set<std::bas
ic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Kfn,std::less<std
::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::const_iterator' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\set(33) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std:
:allocator<char> >,std::set<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::alloc
ator<char> > > >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(30) : see reference to class template instantiation 'std::set<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char
>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::set<std::bas
ic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::_Kfn,std::less<std
::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::iterator' : identifier was truncated to '255' characters in the debug information
firecityplans 2009-04-23
  • 打赏
  • 举报
回复
--------------------Configuration: 3-1p - Win32 Debug--------------------
Compiling...
3-1p.cpp
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,
int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::basic_string<char,std::char_traits<cha
r>,std::allocator<char> > >,std::allocator<int> >' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > const ,int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::ba
sic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(29) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > >,std::allocator<int> >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,
int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::basic_string<char,std::char_traits<cha
r>,std::allocator<char> > >,std::allocator<int> >::const_iterator' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > const ,int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::ba
sic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(29) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > >,std::allocator<int> >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,
int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::basic_string<char,std::char_traits<cha
r>,std::allocator<char> > >,std::allocator<int> >::iterator' : identifier was truncated to '255' characters in the debug information
d:\program files\microsoft visual studio\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > const ,int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::ba
sic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >' being compiled
E:\studyvc\essential c plus plus\ch03\practice\3-1p.cpp(29) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<
char>,std::allocator<char> > >,std::allocator<int> >' being compiled
d:\program files\microsoft visual studio\vc98\include\xtree(118) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,
int>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<int> >::_Kfn,std::less<std::basic_string<char,std::char_traits<cha
r>,std::allocator<char> > >,std::allocator<int> >::_Node' : identifier was truncated to '255' characters in the debug information
lijinfenghust 2009-04-23
  • 打赏
  • 举报
回复
warning:c2406 line:(0) 赶快把另外一个帖子贴出来,或者结贴...
warning:c2406 line:(1) 赶快把另外一个帖子贴出来,或者结贴...
warning:c2406 line:(2) 赶快把另外一个帖子贴出来,或者结贴...

65,210

社区成员

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

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