❝通过宏定义自动创建get和set代码,多个重复操作就不用写得那么闹心了。❞
#define CREATE_VAR(name, type) \
public: \
void set_##name(const type value) \
{ \
m_##name = value; \
} \
type get_##name() const \
{ \
return m_##name; \
} \
private: \
type m_##name;
class Object {
CREATE_VAR(name, string)
CREATE_VAR(age, int)
};
Object object;
object.set_name("Tony");
cout << object.get_name();
object.set_age(20);
cout << object.get_age();