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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

c++ 输入输出流关联

發(fā)布時(shí)間:2024/4/18 c/c++ 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c++ 输入输出流关联 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

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

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

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

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

? ? return 0;
? }
幾個(gè)總結(jié):

(1)無(wú)論是關(guān)聯(lián)還是解開(kāi),都是被關(guān)聯(lián)的流作為主要職責(zé)。即調(diào)用tie的那個(gè)流作為主要的行使權(quán)利,它如果要其它流關(guān)聯(lián)到它,那么會(huì)調(diào)用tie函數(shù),strm.tie(& strm2)? ? ? ? ? 把strm2關(guān)聯(lián)到strm上

(2)如果要解開(kāi)流的關(guān)聯(lián),那么strm調(diào)用tie來(lái)解開(kāi)。strm.tie(nullptr)則可以了。

(3)誰(shuí)調(diào)用關(guān)聯(lián),那么誰(shuí)就調(diào)用tie(nullptr)去解開(kāi)關(guān)聯(lián)。并且這個(gè)流如果執(zhí)行,那么被關(guān)聯(lián)流strm2會(huì)首先清除緩存

?

與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

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

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。