【发布时间】:2018-04-07 04:57:08
【问题描述】:
我现在有一堂课,里面有这几行代码。我正在努力解决的是我的 IDE 中写的函数“使用未声明的标识符作为根”
这是为什么?
template<typename T>
class X
{
public:
const void write(std::ostream & output);
private:
std::unique_ptr< TreeNode<Ty> > root;
};
const void write(std::ostream & output)
{
root->write(output);
}
使用模板编辑以显示更完整的代码范围。
【问题讨论】:
-
const void的返回类型是什么?void返回类型意味着函数不返回值。const如何应用于未返回的值?也许您想在之后放置const:void write(std::ostream& output) const;? -
@ThomasMatthews 最后的 const 是什么意思?我想要实现的是编写一个使用 ostream 引用在根上调用 write 的函数。将 write 标记为 const。
-
方法末尾的
const表示该方法不会写入任何类成员。 -
“使用未声明的根标识符”:它真的是这么说的吗?没有意义。确定不是“使用未声明的标识符:root”?准确无误。
标签: c++ identifier