1
我想编写一个函数,它接受一个对象的矢量和其属性之一的名称。那么它会根据对象的属性值做一些操作。最终会返回一个对象。基于字符串访问类成员
例如。
class A{
Point center;
int length;
...
...
};
class B{
Point position;
bool value;
...
...
};
现在,如果我们将函数传递给A类型的向量,它应该根据中心值操纵对象;如果我们将函数传递给B类型的向量,它应该根据位置值操纵对象。
functiona(vector<T>,string property)
里面的函数我怎样才能访问基于传递的字符串属性?
编辑:正在为字符串的第二个属性只是为了说明;我不在乎它是什么类型
这在C++中是不可能的。 – emlai 2015-03-08 18:51:32
怎么样?有指向成员的指针,你可以将它们作为参数传递。 – Fireho 2015-03-08 18:56:24
你可以用指向成员的方法做到这一点,但是如果你坚持把'property'作为一个字符串参数,那么不能这样做。 – 2015-03-08 18:59:23