DDS 的动态数据类型转换有感

在阅读DDS类型的 动态类型时候,发现有个dds::core::xtypes::DynamicType
这种类型可以自动根据字符串 决定数据的是那个类的。
突然想到了 C 语言的宏替换,宏替换是可以生产原始类型替换
替换之后 编译器在根据实际的类去编译。
这样的用处就是根据字符串动态的生产可以编译的代码。
#define class(x)class
注意不可以在宏参数中间添加空格
这种宏替换可以解决在不知道类型是啥的时候,动态生产出可以执行的代码
class MyTest{
public:
MyTest();
~MyTest();
public:
int GetValue();
};

#define Test(x) x

Test(MyTest) tt;
std::cout <<tt.GetValue()<<std::endl;
但是拿到的是字符串 怎么把字符串变成实际的类型呢
要解决这个问题 只能是使用模板技术 抽象出个个的实际类型 ,动态赋值了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值