我正在转换我的代码以遵循google C++ style guide。引用参数规则说“通过引用传递的所有参数都必须标记为 const”和“输入参数是值或 const 引用,而输出参数是指针”。
关于签名void MyTable::LoadTable(ifstream &fin)
,我如何标记fin
const
给定的参数LoadTable
调用一些非常量函数fin
,例如fin.seekg
?我认为fin
应该被视为输入/输出参数,因此它有点特别。在这种情况下,谷歌人会怎么做?
更新:我知道有很多关于谷歌风格指南的批评。我只是想知道 googlers 是如何解决这个问题的,也许我找到了答案:还有一条规则Streams阅读“仅将流用于日志记录”。也许他们只是在这种情况下不使用流。