我想使用一些关键字来扩展 c++,例如“property”,以向类/对象添加属性(如 Visual Studio 在“托管”版本中扩展 C++)。对于代码示例:
class Example {
public:
[...]
property int size {
get: {
return __size;
}
set: {
if( value > 0 )
__size = value;
else
throw new Exception("Invalid Size");
}
};
};
利用:
[...]
int totalSize = example1.size + example2.size + example3.size;
example1.size = 2 * example1.size;
我想要的是使用一种翻译器将 C++“扩展”源代码翻译成“普通”源代码,就像 QT MOC 一样,它解析一个 C++ 源代码并生成另一个 C++ 源代码,带有 QT“东西" 翻译成纯 C++。当然,我需要扩展翻译器(向它编写代码,以便它可以理解如何处理“属性关键字”)。你知道我可以用来做我想做的事的“翻译器”吗?