相关疑难解决方法(0)

新的C++返回语法是否有限?

我开始了新的私人项目,并决定用更多的C++ 11/14这段时间.所以我也开始使用新的返回语法

auto functionName() -> returnType;
Run Code Online (Sandbox Code Playgroud)

它在大多数情况下工作得很好,但现在我需要一些错误处理,并且无法找到如何重写这样的东西:

virtual const char* what() const noexcept override;
Run Code Online (Sandbox Code Playgroud)

使用新语法.是否存在无法使用新语法的情况,或者我是否只是不够聪明才能找到正确的顺序?对我而言,保持一致是很重要的,所以我希望问题更多地在我身边.

c++ return c++11

36
推荐指数
3
解决办法
3418
查看次数

为什么不能推断出主要的返回类型?

正如预期的那样,C++ 11中的以下内容失败,因为该语言没有bog标准函数的返回类型推导:

auto main()
{
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,C++ 14确实如此,所以我无法解释以下错误(在GCC trunk,clang 3.8和Visual Studio 2015中具有相同的结果):

error: 'main' must return 'int'
Run Code Online (Sandbox Code Playgroud)

我没有看到标准中的一个段落,禁止返回类型扣除main?或者两个编译器都不兼容?

(对于它的价值,我永远不会真的这样做.int main()为了胜利......)

c++ return-type-deduction c++14

32
推荐指数
3
解决办法
1860
查看次数

标签 统计

c++ ×2

c++11 ×1

c++14 ×1

return ×1

return-type-deduction ×1