gpt4 book ai didi

c++ - 动态设置要提取的参数

转载 作者:搜寻专家 更新时间:2023-10-31 01:33:56 30 4
gpt4 key购买 nike

有结构

struct Person{
Person(int a , int i):age(a),id(i){};
int age;
int id;
}

是否可以将哪个参数传递给 extract 作为函数中的参数?有点像

int extract( Person * p , param ){
return p -> param;
}

如果像这样使用它会返回 id

extract( p , "id" )

和年龄,如果我像这样使用它

exctract(p , "age")

在 C++ 中可以实现这样的功能吗?

最佳答案

您可以使用指向类成员的指针。

struct Person{
Person(int a , int i):age(a),id(i){};
int age;
int id;
};

int extract(Person* p, int Person::* param)
{
return p->*param;
}

你会像这样使用它:

extract(p, &Person::id);

demo

关于c++ - 动态设置要提取的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40455374/

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