void foo(ifstream &ifs)
{
//do something
}
int main()
{
fstream fs("a.txt", fstream::in);
foo(fs); //error, can't compile
}
上述代码无法编译,看起来我不能用一个
fstream
对象初始化一个 ifstream &
?如果我这样做会怎样:foo(static_cast<ifstream>(fs));
或者
foo(dynamic_cast<ifstream>(fs));
ifstream
和ofstream
是从fstream
派生出来的。 - Alcott