在C#中,我正在使用StreamReader来读取一行文件.我还将当前行的数字保留在int中,以获取可能的错误消息的报告.
阅读每一行都伴随着一些测试(例如,以#开头的行是注释,需要跳过),因此我打算将整个阅读过程放在一个函数中,这将继续阅读,直到遇到有用的行,然后返回该行.如果遇到EOF,它将返回null.
我认为当我将这个函数定义为字符串读取(StreamReader sr,out int lineNumber)时,我很聪明,但现在证明C#将无法在该函数内做类似lineNumber的操作.它假定变量尚未分配,可能是因为它无法知道是否已经在此函数调用之前分配了该变量.
所以,问题很简单:我如何指定这个变量是一个inout参数(我认为这是术语;我听说在其他编程语言的上下文中被提到)这是否可能在第一位?我绝对不会让lineNumber成为我班的成员,所以这不是一个选择.