如何获得这个类类型
How to get this class type?
例如,我使用宏来编写构造函数方法
#define DEFAULT_CONSTRUCTOR T() { ...; }
class A
{
DEFAULT_CONSTRUCTOR;
};
但是,我不知道具体的类型t,我尝试decltype(*this)。不能在构造函数中使用。有什么办法吗?请不要使用宏参数。
你应该给宏一个参数。
:
#define DEFAULT_CONSTRUCTOR(CLS_NAME) CLS_NAME() { ...; }
现在在你的类中:(你希望它是一个私人的吗?)
class A
{
DEFAULT_CONSTRUCTOR(A);
};
相关文章:
- 如何从C++中的依赖类型中获得它所依赖的类型
- 当我输入字符类型的数字时,为什么我无法获得整数?
- 为什么static_cast基础类型的枚举类int8_t获得意外值?
- 标准对此指向成员函数类型模板参数有何说明?是我的代码有误,还是 MSVS 16.6 有问题?
- 对于多态类型T,如何在没有类型T实例的情况下获得指向T的虚拟表的指针
- CRTP:为什么获得嵌套类型和派生类的嵌套方法有区别
- 如何使用C++libgraphqlparser获得GraphQL FieldDefinition中定义的类型
- 提升multi_index获得依赖类型
- 如何获得将两种不同类型的相乘的结果类型?
- 如何使用Dynamic_cast获得对象类型
- C++ pcre2_compile获得不完整的类型
- 如何获得C - 模板状行为,但仅允许实例化两种特定类型
- 是否有可能获得未知类的班级成员的计数和类型
- 精神X3,如何获得属性类型以匹配规则类型
- 如果我获得Integer和Double的产品,输出的数据类型是什么
- 为什么q_enum在没有qregistermetatepe的情况下无法获得正确的类型值
- 如何获得支持枚举的类型
- 获得预期 C++ 中的类型说明符错误
- 在 C++14 中使用通用 lambda 和自动返回类型特征获得不同的结果
- 我想通过使用字符串数据类型而不是char类型来获得多行