它用于获取/设置绑定流。
C++98
默认情况下,cin
绑定到cout
,wcin
绑定到wcout
。库实现可以在初始化时绑定其他标准流。
C++11
默认情况下,标准窄流cin
和cerr
与cout
绑定,它们的宽字符对应(wcin
和wcerr
)绑定到wcout
。 库实现也可以绑定clog
和wclog
。
声明
以下是ios::tie
函数的声明。
get (1) ostream* tie() const;
set (2) ostream* tie (ostream* tiestr);
第一种形式(1)返回指向绑定输出流的指针。
第二种形式(2)将对象绑定到tiestr
,并返回一个指向调用之前绑定的流的指针(如果有的话)。
返回值
- 指向在调用之前绑定的流对象的指针,或者在流未绑定的情况下,则为空指针。
示例
在下面的例子中演示了ios::tie
函数的使用。
#include <iostream>
#include <fstream>
int main () {
std::ostream *prevstr;
std::ofstream ofs;
ofs.open ("test.txt");
std::cout << "tie example:/n";
*std::cin.tie() << "This is inserted into cout";
prevstr = std::cin.tie (&ofs);
*std::cin.tie() << "This is inserted into the file";
std::cin.tie (prevstr);
ofs.close();
return 0;
}
编译和运行上面的程序,将产生以下结果 -
tie example:
This is inserted into cout