Зачистка ответа JSON с помощью Scrapy

C ++ не имеет встроенных возможностей reflection для более динамических языков, поэтому вы не можете делать то, что вы хотели бы использовать в своих возможностях языка.

Однако, если все члены одного типа, вы можете сделать это с помощью карты указателей на членов и небольшой подготовки:

 // typedef for the pointer-to-member
 typedef int X::*ptr_attr;

 // Declare the map of pointers to members
 map<string,ptr_attr> mattr;
 // Add pointers to individual members one by one:
 mattr["xx"] = &X::xx;
 mattr["yy"] = &X::yy;

// Now that you have an instance of x...
 X x;
// you can access its members by pointers using the syntax below:
 x.*mattr["xx"] = A["aa"];
35
задан Artjom B. 3 October 2015 в 17:38
поделиться