假设我有一个T型:
typedef ... T;
Run Code Online (Sandbox Code Playgroud)
然后我有这些功能:
T f11();
T& f12();
T&& f13();
const T f21();
const T& f22();
const T&& f23();
Run Code Online (Sandbox Code Playgroud)
然后像这样调用它们:
auto x11 = f11();
auto x12 = f12();
auto x13 = f13();
auto x21 = f21();
auto x22 = f22();
auto x23 = f23();
Run Code Online (Sandbox Code Playgroud)
从哪个C++ 11标准的section /子句可以推导出x11..x23的等效非自动声明?
它在§7.1.6.4 自动说明符中.在函数返回类型的示例中,模板参数推导的规则适用.
从标准中引用相关示例:
const auto &i = expr;类型
i是f(expr)在以下发明的函数模板的调用中推导出的参数X的类型:
template <class AUTO> void f(const AUTO& X);
因此,在你的例子,所有变量的类型x11来x23推导出的T.
| 归档时间: |
|
| 查看次数: |
308 次 |
| 最近记录: |