什么IDE可以成功地将所有变量的类型从QSharedPointer更改为boost :: shared_ptr?

时间:2013-04-02 16:57:22

标签: c++ refactoring

今天我尝试在100多个文件的项目中更改QSharedPointer类型的所有智能指针的类型来boost :: shared_ptr。

我用sed和grep解决了这个问题,但是看起来很简单,结果却是一场噩梦,因为虽然QSharedPointer只有clear和data,但是boost :: shared_ptr分别使用reset和get。替换那些结果也取代了许多列表和字符串以及字节数组的data()。

是否有可以自动完成此工作的IDE?

2 个答案:

答案 0 :(得分:2)

你可以做Drew Dormann对Qt Creator的建议,如果你还没有它,那就是免费的。只需右键单击clear()实例的data()QSharedPointer方法,选择重构 - 重命名光标下的符号,然后替换为boost::shared_ptr的方法

请记住,至少在Windows上,Creator重构工具将退出您的项目并提供重构Qt库标题,因此您应该取消选中列表中的那些。

更换完所有来电后,您可以将QSharedPointer重命名为boost::shared_ptr类型名称,然后就完成了。

答案 1 :(得分:0)

Visual Assist是Visual Studio的附加组件,具有免费试用期。

该工具包含"重命名此成员函数",您可以在 sed-grepping 类型本身的名称之前在两个QSharedPointer成员上使用该函数。