类型特征是语法扩展,允许开发人员在编译时确定类型的各种特征。 C ++支持由编译器支持和一组库模板的组合提供。通过标题<type_traits>提供对类型特征的访问
上下文(1)可以使用以下特征提取可调用的返回类型和参数类型:#include 模板 struct callable_trait {};模板
我正面临这个让我疯狂的问题。我有一个模板化的结构,能够提供部分特化:模板 struct field {template
我们可以使用检测习惯来检查一个类是否具有特定签名的成员函数吗?
给定(减少)检测习语命名空间type_traits {template的实现 使用void_t = void;命名空间细节{模板
我目前正在连接一个具有多个实现的应用程序,用于单个目的。在运行时检查是否可以使用适当的实现,或者是否使用了回退。为了那个原因 ...
我有以下代码,其中包含从以下位置复制的可变参数模板:https://www.youtube.com/watch?v = iWvcoIKSaoc @ 41:30 auto sum(){return 0; }模板 自动求和(...
有没有办法写一个类型特征来确定一个类型是否支持C ++中的负零(包括整数表示,如符号和大小)?我没有看到任何直接做的事情......
我正在寻找模板代码来回答问题“T类有成员X吗?”。网络上有一些采用SFINAE的解决方案(例如,请参阅如何检测是否存在...
我正在尝试实现一个模板类(此处名为Get <>),给定结构H,类型为Get 如果qualified-id H :: der不存在,则type为H本身,并且为Get
我有一个带有嵌套模板结构的模板结构。模板 struct foo {template struct bar {static constexpr int f = F;静态constexpr ...
如果为false,std :: is_member_function_pointer不会编译
我正在寻找:我有一个模板化的类,如果类有所需的函数,想要调用一个函数,如:template do_something(){if constexpr(std :: ...
目前我有两个功能:模板 bool f(Type * x);模板 bool f(std :: tuple * X);有没有办法合并这两个功能......
boost static_vector not std :: is_trivially_destructible
根据这个例子(左边的例子)#include #包括 struct X {int k;的std ::阵列 一个;促进::...
我很难搞定这件简单的事情。我发现有一件事是有效的:#include struct A {int Method(); }; static_assert(std :: is_same_v <...
std :: is_same不能通过constexpr auto变量的decltype工作
我试图static_assert一些元变换算法工作,并且令人难以置信的是没有比较相同,即使typeid()。name()返回完全相同的字符串。重复......
如何将tick类声明为另一个类的朋友。点击库这里https://github.com/pfultz2/Tick示例`TICK_TRAIT(My_Trait){template 自动要求(T && ...
我想使用模板在两组类型之间生成类型安全的转换。基本案例如下所示:模板 struct ATraits {};模板 结构...
有没有办法在C ++中确定变量的类型是指针还是任何带有重载运算符*的迭代器?有标准的std :: is_pointer,但它没有提到迭代器。我想用它...
我想检查两种类型是否属于同一模板。作为一个例子,我希望下面的代码片段返回true,因为尽管内部元素不同,但两个对象都是向量...
我试图找出一个特征来查找方法是否是虚拟的:(https://ideone.com/9pfaCZ)//几个结构应该失败,这取决于T :: f是否为虚拟。模板 struct Dvf:......
为什么以下代码编译? #包括 #包括 int main(){std :: vector > uncopyableStuff; for(int i = 0; i <5; ++ i)...