大家好,又见面了,我是你们的朋友全栈君。
C decltype
flyfish
返回类型后置 编译器通过初始化去顶auto代表的类型,不需要定义变量仅希望得到类型使用decltype
代码语言:javascript复制使用方式1 类似auto
代码语言:javascript复制std::vector<int> v;
typedef decltype(v.begin()) it;
for (it i = v.begin(); i != v.end(); i )
{
}
代码语言:javascript复制//或者
代码语言:javascript复制for (auto i = v.begin(); i != v.end(); i )
{ }
代码语言:javascript复制使用方式2 i和j的类型相同
代码语言:javascript复制int i = 1;
decltype(i) j = i * 2;
代码语言:javascript复制使用方式3 返回类型后置
代码语言:javascript复制template<typename T, typename U>
auto add(T t, U u) -> decltype(t u)
{
return t u;
}
auto t = add(1.1, 2.2);
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。