c_cpp C ++ Setter Getter宏
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp C ++ Setter Getter宏相关的知识,希望对你有一定的参考价值。
//--------------------------------------------------
#define SetMacro(name,type) \
void Set##name (type _arg) \
{ \
if (this->name != _arg) \
{ \
this->name = _arg; \
} \
}
//--------------------------------------------------
#define GetMacro(name,type) \
type Get##name ()const \
{ \
return this->name; \
}
//--------------------------------------------------
#define SetGetMacro(name,type) \
void Set##name (type _arg) \
{ \
if (this->name != _arg) \
{ \
this->name = _arg; \
} \
} \
type Get##name ()const \
{ \
return this->name; \
}
//--------------------------------------------------
#define BooleanMacro(name,type) \
void name##On () \
{ \
if(this->name != static_cast<type>(1)) \
{ \
this->name = static_cast<type>(1); \
} \
} \
void name##Off () \
{ \
if(this->name != static_cast<type>(0)) \
{ \
this->name = static_cast<type>(0); \
} \
} \
type Is##name##On() \
{ \
return this->name; \
}
//--------------------------------------------------
#define BooleanSetGetMacro(name,type) \
void Set##name (type _arg) \
{ \
if (this->name != _arg) \
{ \
this->name = _arg; \
} \
} \
type Get##name ()const \
{ \
return this->name; \
} \
void name##On () \
{ \
if(this->name != static_cast<type>(1)) \
{ \
this->name = static_cast<type>(1); \
} \
} \
void name##Off () \
{ \
if(this->name != static_cast<type>(0)) \
{ \
this->name = static_cast<type>(0); \
} \
} \
type Is##name##On() \
{ \
return this->name; \
}
以上是关于c_cpp C ++ Setter Getter宏的主要内容,如果未能解决你的问题,请参考以下文章
C ++:私有结构的每个单个成员的通用getter/setter
c ++中的getter/setter是正确的方法吗?
什么是getter和setter方法
Object C 属性、特性、类型
C++ getter 和 setter 最佳风格
C#自定义getter / setter没有私有变量