我正在为C ++创建一个项目,该项目接受现有的.txt文件,读入行,并创建另一个相对于初始文件的文件。我目前正在尝试创建一个函数,将文件作为参数,单独读取每一行,将每一行推入堆栈,然后返回堆栈,这样我就可以使用堆栈来创建和填充新的文件。
`
//Takes the given file object and reverses the order
//of the lines by pushing each line into a stack.
stack<string> reverseStack(ifstream inFile){
stack<string> inverse;
string currentLine;
while(getline(inFile, currentLine){
inverse.push(currentLine)
}
return inverse;
} `
此时,我有几个问题。
1)return inverse
行继续抛出两个错误。 &#34;意外的令牌:返回&#34;和&#34;意外的标记:反向&#34;。如果我理解正确,这意味着该函数不期望返回语句,所以我只能假设我在这里有语法问题。我的代码有问题吗?任何关于解决方案的建议或产生相同结果的更好方法都非常感谢。
2)返回指向堆栈的指针的语法是什么,或者那不是可以做的事情? (即*stack<string>
作为返回值?)
提前致谢!
编辑:错误已得到纠正。 while循环缺少结束括号!