我正在编写一个C ++库,并且记得我需要导出每个类。
以下代码:
class MyClass
应该成为:
class MY_EXPORT MyClass
我有几个需要进行此更改的类 - 有没有办法使用Qt Creator执行此操作?
答案 0 :(得分:6)
您可以使用Advanced Search功能实现此目的:
Edit > Find/Replace > Advanced Find > Open Advanced Find...
或 CTRL + SHIFT + F Search Results
窗口中,选择适当的Scope
(Current Project
可能就您的情况而言足够了。)检查Use regular expressions
。
在Search for
字段中,输入:
^class (.*[^;])$
这将搜索从行开头开始并且不以分号结尾的所有类声明(以排除前向声明)。
在File pattern
字段中,输入:
*.h
这将确保搜索仅在头文件中发生。
单击Search & Replace
按钮。您将看到一个搜索结果列表,并显示消息“此更改无法撤消。” - 现在是您工作的好时机,如果您还没有。
展开每个搜索结果以检查匹配是否正确。满意后,在Replace with
字段中输入以下内容:
class MY_EXPORT \1
这会在每个类的名称前添加MY_EXPORT
,使用numbered backreference在步骤4中插入使用group捕获的类名。
点击Replace
按钮,您就完成了。