如何获得这个类类型

How to get this class type?

本文关键字:类型 何获得      更新时间:2023-10-16

例如,我使用宏来编写构造函数方法

#define DEFAULT_CONSTRUCTOR    T() { ...; }
class A
{
    DEFAULT_CONSTRUCTOR;
};

但是,我不知道具体的类型t,我尝试decltype(*this)。不能在构造函数中使用。有什么办法吗?请不要使用宏参数。

你应该给宏一个参数。

:

#define DEFAULT_CONSTRUCTOR(CLS_NAME) CLS_NAME() { ...; }

现在在你的类中:(你希望它是一个私人的吗?)

class A
{
    DEFAULT_CONSTRUCTOR(A);
};