0

代码:

class A
{
    private:
        int abc;
        string xyz;
}

在上面的代码中,如何访问声明数据成员的名称 ( abc, xyz) 并将它们打印到控制台?

4

2 回答 2

2

我能想到的唯一方法是使用宏:

#define PRINT_VAR(x) std::cout << #x << '\n';

C++ 没有其他语言的反射能力。

于 2013-09-06T06:19:20.400 回答
0

如果您的意思是在事先不知道这些名称的情况下以字符串的形式访问成员的名称,那是不可能的——C++ 不支持反射。

于 2013-09-06T06:21:41.933 回答