• ca72a_c++_标准IO库:面向对象的标准库


    /*ca72a_c++_标准IO库:面向对象的标准库
    继承:基类-》派生类
    3个头文件
    9个标准库类型
    IO对象不可复制或赋值

    ofstream, f--file,文件输出流
    ostringstream,o--输出,string字符串输出流
    iostream--输入输出流

    istringstream,i-输入,string字符串输入流
    ifstream,i--输入,f--file,文件输入流

    stringstream--字符串输入输出流, <sstream> ////字符串输入输出流头文件
    fstream--文件输入输出流


    */

     1 /*ca72a_c++_标准IO库:面向对象的标准库
     2 继承:基类-》派生类
     3 3个头文件
     4 9个标准库类型
     5 IO对象不可复制或赋值
     6 
     7 ofstream, f--file,文件输出流
     8 ostringstream,o--输出,string字符串输出流
     9 iostream--输入输出流
    10 
    11 istringstream,i-输入,string字符串输入流
    12 ifstream,i--输入,f--file,文件输入流
    13 
    14 stringstream--字符串输入输出流, <sstream> ////字符串输入输出流头文件
    15 fstream--文件输入输出流
    16 
    17 
    18 
    19 
    20 */
    21 
    22 #include <iostream>
    23 #include <fstream>
    24 #include  <sstream> ////字符串输入输出流头文件
    25 
    26 using namespace std;
    27 //void print(std::ofstream of)
    28 //{
    29 //    cout << "test!" << endl;
    30 //}
    31 void print(std::ofstream &of)//传递引用
    32 {
    33     cout << "ofstream test" << endl;
    34 }
    35 ofstream& print1(std::ofstream &of)//传递引用
    36 {
    37     cout << "ofstream test" << endl;
    38     std::ofstream of2;
    39     return of2;//返回引用是可以的, ofstream&
    40 }
    41 
    42 void foo(ostream& os)
    43 {
    44     cout << "test ostream" << endl;
    45     //os << "test ostream" << endl;
    46 }
    47 
    48 int main()
    49 {
    50     //cout是ostream输出流对象
    51     //cout都是在std名称空间里面。std::cout,std::endl;,std::cin
    52     cout << "hello world!" << endl;
    53     fstream fs;//文件输入输出流
    54     //或者。std::fstream
    55 
    56     std::stringstream ss;//字符串输入输出流
    57 
    58     std::ofstream out1, out2;
    59     //out1=out2;//错误。IO对象不可复制或赋值
    60     //print(out1);//错误。IO对象不可复制或赋值,可以传参数与引用
    61     print(out1);//可以传参数与引用
    62 
    63     //vector<ofstream> vec;//不能用容器
    64 
    65     foo(cout);//传递cout,cout是ostream
    66 
    67     cout << "ofstream test!!!" << endl;
    68     std::ofstream ofs;
    69     foo(ofs);// foo(ostream& os) osstream是基类,所以也可以接受它的派生类,ofstream
    70 
    71     ostringstream oss;
    72     foo(oss);// foo(ostream& os) osstream是基类,所以也可以接受它的派生类,ostringstream
    73     return 0;
    74 }
    欢迎讨论,相互学习。 txwtech@163.com
  • 相关阅读:
    vue2.0 之 douban (二)创建自定义组件tabbar
    vue2.0 之 douban (一)框架搭建 及 整体布局
    react-navigation
    react-native modal
    javascript-使用el表达式获取后台传递的数据
    java Map
    java List集合
    javascript 自定义Map
    javascript Array(数组)
    ZOJ 3868 GCD Expectation (容斥+莫比乌斯反演)
  • 原文地址:https://www.cnblogs.com/txwtech/p/12291544.html
Copyright © 2020-2023  润新知