注册 登录
编程论坛 C++教室

求教一个vector<string>得问题

dong820729 发布于 2010-02-11 09:30, 1174 次点击
以下是把输入的单词转换为大写的程序:
#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main()
{
    string st;
    vector<string> vec;
    while(cin>>st)
    {
        if(st=="exit00")
            break;
        vec.push_back(st);
    }
    for(vector<string>::size_type i=0;i!=vec.size();++i)
    {
        for(string::size_type j=0;j!=vec[i].size();++j)
        {
            vec[i][j]=toupper(vec[i][j]);
        }
        
        if(i%8==0)
            cout<<endl;
        cout<<vec[i]<<" ";
    }
    return 0;
}//此题有4个警告!

我用的是vc6.0
警告内容如下:
D:\c++\vc6\primer\314.cpp(27) : warning C4786: 'std::reverse_iterator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const *,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_
traits<char>,std::allocator<char> > const &,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const *,int>' : identifier was truncated to '255' characters in the debug information
D:\c++\vc6\primer\314.cpp(27) : warning C4786: 'std::reverse_iterator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > *,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits
<char>,std::allocator<char> > &,std::basic_string<char,std::char_traits<char>,std::allocator<char> > *,int>' : identifier was truncated to '255' characters in the debug information
c:\program files\microsoft visual studio\vc98\include\vector(39) : warning C4786: 'std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >
 >::vector<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
c:\program files\microsoft visual studio\vc98\include\vector(60) : warning C4786: 'std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >
 >::~vector<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

请大神告知此题警告的内容是什么意思,如何改正!
6 回复
#2
leftwing2010-02-15 22:04
用vc试了一下 果然会出现警告,换了编译器就没有这个问题了。网上查了一下,说是vc对stl的支持不够啊什么的。反正vc6.0的bug多多,换个编译器啦~~~
#3
pangding2010-02-15 23:53
说来说去就只有一个 warning C4786 你上网去查一下这个错误代号。应该有用。
#4
cnfarer2010-02-16 12:06
http://blog.
#5
blueboy820062010-02-16 22:18
只需在程序开头加上 #pragma warning(disable: 4786) 即可
#6
dong8207292010-02-21 22:03
谢谢各位指教!
#7
lerncav2010-07-26 18:46
回复 楼主 dong820729
你QQ多少i?
1