日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

c++ 输入输出流关联

發布時間:2024/4/18 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++ 输入输出流关联 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#include <iostream>
#include <string>
#include <fstream>
#include <sstream>
using namespace std;
int main()
{

? cout << cin.tie() ?<< endl;? //打印cin的關聯流的地址
? cout << &cout << endl;? ? //打印cout的地址
? cout << &cin << endl;? ? ? //打印地址
? cout << cout.tie() << endl;? ?//打印關聯流地址

? cout <<"tie the cerr to cout " << endl;
? cout.tie(&cerr);? ? ? ? ? ? //把cerr關聯到cout
? cout << cout.tie() << endl;? ? //打印cout的關聯流,即打印cerr的地址
? cout << &cerr <<endl;? ? ? ? ? //打印cerr的地址
? cout.tie(nullptr);? ? ? ? ? ? ? ? ? ? //徹底解開關聯流,關聯流都被解開了把?
? cout << "free the tie:"<<cout.tie() <<endl;? //

? cout.tie(nullptr);? ? ? ?//解開cout 的關聯流
? cout << cout.tie() <<endl;??
? cout << "tie the new:" <<endl;
? ostream * old_tie ?= cin.tie(nullptr);? //解開cin的掛鏈流,并且把cin原來的關聯流返回
? cout << "old value: "<< ?old_tie ?<< endl;? ? ? ? //
? cout << "now 's cin ' s tie is:" <<cin.tie()<< endl;

? ? return 0;
? }
幾個總結:

(1)無論是關聯還是解開,都是被關聯的流作為主要職責。即調用tie的那個流作為主要的行使權利,它如果要其它流關聯到它,那么會調用tie函數,strm.tie(& strm2)? ? ? ? ? 把strm2關聯到strm上

(2)如果要解開流的關聯,那么strm調用tie來解開。strm.tie(nullptr)則可以了。

(3)誰調用關聯,那么誰就調用tie(nullptr)去解開關聯。并且這個流如果執行,那么被關聯流strm2會首先清除緩存

?

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的c++ 输入输出流关联的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。