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

What IDE can successfully change the type of all variables from QSharedPointer to boost::shared_ptr?

本文关键字:QSharedPointer 变量 boost shared ptr IDE 成功 类型 改变 什么      更新时间:2023-10-16

今天我尝试在一个100+文件的项目中改变QSharedPointer类型的所有智能指针的类型,以boost::shared_ptr。

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

是否有一个IDE可以自动完成这项工作?

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

的方法

请记住,至少在windows上,Creator重构工具将退出您的项目,并提供重构Qt库头文件,因此您应该从列表中取消选中这些。

替换所有调用后,您可以将QSharedPointer重命名为boost::shared_ptr类型名称,然后完成。

Visual Assist是一个免费试用期的Visual Studio插件。

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