我是视觉工作室和IDL的新人。 我有一个.idl文件,visual studio正在从idl文件生成.h和.cpp文件。
在生成的代码中,为IDL文件中的“in”属性添加“const”。 我想摆脱这个“常规”...请有人帮助我。
生成的头文件具有以下功能:
virtual CosTransactions::Coordinator_ptr recreate(
const CosTransactions::PropagationContext& ctx,
CosTransactions::otid_t_out tid) = 0;
virtual CosTransactions::Coordinator_ptr tmf_start(
const CosTransactions::otid_t& tid) = 0;
我想知道如何避免在recreate()和tmf_start()的参数列表中使用“const”
答案 0 :(得分:1)
由于参数本身为[in]
,因此不会进一步更改参数。这就是const
首先有意义的原因。你没有解释为什么你想剥去常量。如果说明符对你来说是一个障碍(例如,内部方法将非const &
作为参数),有两种简单直接的方法可以解决它:
const_cast
去除/覆盖const说明符