gpt4 book ai didi

c++ - 这个宏函数是什么意思呢?

转载 作者:行者123 更新时间:2023-11-30 18:41:31 24 4
gpt4 key购买 nike

#define CONCAT(a,b) a##b
#define METHOD(method) \
public: \
static int CONCAT(method,wrapper)(int* ptri, char* ptrc, double* ptrd) \
{ \
return ((type *)ptri)->method(ptrc,ptrd); \
}

问题 1:此方法类似于类或结构吗?

问题2:对于

static int CONCAT(method,wrapper)(int* ptri, char* ptrc, double* ptrd)

这意味着:

static int methodwrapper(int* ptri, char* ptrc, double* ptrd)

最佳答案

不是那样的,它只是一种混淆代码的方法(或者以一种懒惰的方式一遍又一遍地编写几乎相同的东西)

以下内容

class X
{

public:
static int SomeMethodwrapper(int * ptri, char* ptrc, double* ptrd)
{
return ((type *)ptri)->SomeMethod(ptrc,ptrd);
}
public:
static int SomeOtherMethodwrapper(int * ptri, char* ptrc, double* ptrd)
{
return ((type *)ptri)->SomeOtherMethod(ptrc,ptrd);
}

};

因此可以写成

class X
{
METHOD(SomeMethod)
METHOD(SomeOtherMethod)
};

关于c++ - 这个宏函数是什么意思呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21052517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com