在我的计划中,我有
stringstream strumien(); //1
stringstream strumien; // 2
strumien<<"napis "<<8<<endl;
Run Code Online (Sandbox Code Playgroud)
并且第一行生成以下错误
类型'std :: stringstream(){aka std :: basic_stringstream()}'和'const char [7]'到二进制'operator <<'的无效操作数
但第二个工作正常.(当然总是其中一个被评论出来)
那么它们之间的区别是什么?因为我一直认为它们是对象的相同定义.
看起来像函数声明的东西是函数声明.那是
T name();
Run Code Online (Sandbox Code Playgroud)
声明一个名为name不带参数并返回a 的函数T.这被称为最令人烦恼的解析.有两个可能的修复方法可以避免这个问题:关闭括号或使用C++ 2011"统一初始化"(这是一个用词不当):
T name{};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
322 次 |
| 最近记录: |