我可以在没有任何实例变量的情况下使用 decltype 吗?
Can I use decltype without any instance variables?
我从一个具有宏输出类型的库中使用了一个函数:
STRANGE_MACRO(something) the_function(Type1 t, Type2 u);
我想定义一个变量,该变量将接受此返回值,而无需先声明Type1
或Type2
。
我希望这样的事情会起作用:
decltype(the_function(Type1, Type2)) return_value;
但它不起作用。我可以在不弄清楚宏的计算结果并且不先声明几个变量的情况下执行此操作吗?
这正是
std::declval
的用途:
decltype(the_function(std::declval<Type1>(), std::declval<Type2>())) return_value;
相关文章:
- 在没有太多条件句的情况下,我如何避免被零除
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 在未初始化映射的情况下,将值插入到映射的映射中
- 是默认情况下分配给char数组常量的值
- 为什么我不能在不创建字符串变量的情况下使用函数的字符串输出
- 如何在不产生任何垃圾的情况下获得C中的像素
- 在已经使用Git的情况下减少编译时间
- 为什么在Windows上的VS 2019和Clang 9中"size_t"在没有标题的情况下工作
- 如何在没有信号的情况下从C++执行QML插槽
- 如何在不知道向量大小的情况下输入向量内部的向量?
- 为什么在某些情况下不写入此文件?
- 为什么Mat类的两个对象可以在不重载运算符+的情况下添加
- 在没有Xcode的情况下在Mac捆绑包中嵌入框架
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 是否可以在不使用 decltype 的情况下推断先前定义的 extern 变量的类型
- 在 decltype(auto) 的情况下,lambda 是否有特殊规则?
- 我可以在没有任何实例变量的情况下使用 decltype 吗?
- 对于下面的代码,我将 decltype(s1.size()) 更改为 int,代码工作正常.在这种情况下,decltyp
- 在这种情况下如何使用decltype
- 在不使用decltype[c++]的情况下为键类型传递比较函数