【发布时间】:2010-12-11 02:21:29
【问题描述】:
template <class T>
T Read () {
T t;
cin >> t;
if (cin.fail()) {
// ...
}
return t;
}
这个通用代码读取 T 类型的值,并进行了一些额外的错误处理。 它依赖于具有可以解析 T 的 operator>>,并且通过这种方式它可以扩展到新类型。
我没有意识到它依赖于 T 具有默认构造函数。 现在我遇到了这个问题。
我有什么选择?
正确的做法是什么?
【问题讨论】:
标签: c++ stream default-constructor