首页 > 解决方案 > Qt Creator:为 C++ 头文件生成 UUID

问题描述

是否可以在 Qt Creator 编辑器中为 c++ 头文件生成 UUID。例如,我想得到类似的东西

#ifndef _f6198c0e_13c3_4641_af52_140d11befb93_
#define _f6198c0e_13c3_4641_af52_140d11befb93_
#endif

其中“_f6198c0e_13c3_4641_af52_140d11befb93_”由 IDE 生成。

标签: qt-creator

解决方案


我目前唯一的解决方案是开发一个 Qt Creator 插件。这是我得到我想要的源代码:

  void MyPluginPlugin::triggerAction()
  {
     auto ret = QUuid::createUuid().toString();
     ret = ret.replace('{', '_');
     ret = ret.replace('}', '_');
     ret = ret.replace('-', '_');

     auto clipboard = QApplication::clipboard();
     clipboard->setText( ret );

     QKeyEvent *event = new QKeyEvent ( QEvent::KeyPress, Qt::Key_V, Qt::ControlModifier );
     QCoreApplication::postEvent( QApplication::focusWidget(), event);
  }

推荐阅读