用std::ifstream,std::ofstream作为函数参数传递时,必须通过引用传递,因为其copy方法被私有化,从而保证对象的唯一性。
正确
正确
void LineRead::read(std::ifstream *fin)
{
std::string line;
while(getline(*fin,line))
{
std::cout<<line<<"\n";
};
};
错误
void LineRead::read(std::ifstream fin)
{
//参数传递会导致产生副本
std::string line;
while(getline(fin,line))
{
std::cout<<line<<"\n";
};
};