ostringstream , list, iostream 的使用方法



#include<iostream>
#include<sstream>
#include<list>

using namespace std;

int main()
{
    list<char> mylist;

    std::ostringstream tunnel_type;
     tunnel_type <<"I";
     tunnel_type <<"love";
     tunnel_type <<"you";

      cout<<"test list start:"<<endl;
      cout<<tunnel_type<<endl;
     return 1;
}


上述程序如果不添加 #include<list> ,模板类 list<char> 会报莫名的错误:

list.cc: In function 'int main()':
list.cc:9:5: error: 'list' was not declared in this scope
     list<char> mylist;
     ^
list.cc:9:10: error: expected primary-expression before 'char'
     list<char> mylist;
          ^
list.cc:9:10: error: expected ';' before 'char'

上述程序如果不添加 #include<sstream> ,模板类  std::ostringstream tunnel_type; 会报莫名的错误:

ist.cc: In function 'int main()':
list.cc:11:24: error: aggregate 'std::ostringstream tunnel_type' has incomplete type and cannot be defined
     std::ostringstream tunnel_type;

如果不加using namespace std;编译错误如下

[root@fedora-odl-1 test]# g++ list.cc
list.cc: In function 'int main()':
list.cc:9:5: error: 'list' was not declared in this scope
     list<char> mylist;
     ^
list.cc:9:5: note: suggested alternative:
In file included from /usr/include/c++/4.8.3/list:63:0,
                 from list.cc:3:
/usr/include/c++/4.8.3/bits/stl_list.h:438:11: note:   'std::list'
     class list : protected _List_base<_Tp, _Alloc>
           ^
list.cc:9:10: error: expected primary-expression before 'char'
     list<char> mylist;
          ^
list.cc:9:10: error: expected ';' before 'char'
list.cc:16:7: error: 'cout' was not declared in this scope
       cout<<"test list start:"<<endl;
       ^
list.cc:16:7: note: suggested alternative:
In file included from list.cc:1:0:
/usr/include/c++/4.8.3/iostream:61:18: note:   'std::cout'
   extern ostream cout;  /// Linked to standard output
                  ^
list.cc:16:33: error: 'endl' was not declared in this scope
       cout<<"test list start:"<<endl;
                                 ^
list.cc:16:33: note: suggested alternative:
In file included from /usr/include/c++/4.8.3/iostream:39:0,
                 from list.cc:1:
/usr/include/c++/4.8.3/ostream:564:5: note:   'std::endl'
     endl(basic_ostream<_CharT, _Traits>& __os)
     ^



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HehuaTang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值