このページでは

クイックフィックスの適用

コードのリファクタリング中にクイックフィックスを適用するには、コードエディタのコンテキストメニューで選択します。使用できる修正は、コードエディタ内のカーソルの位置に依存します。

  1. クイック・フィックスを適用するには
    • C++ コードでは、オペランド、条件文、文字列、または名前を右クリックします。
    • QML コードでは、アイテムの ID または名前を右クリックします。
  2. コンテキスト・メニューからRefactoring を選択し、クイックフィックスを選択します。

または、Alt+Enter を選択すると、現在のカーソル位置で利用可能なクイックフィックスを含むコンテキストメニューが開きます。

デフォルトでは、リファクタリングされたファイルは自動的に保存されます。この機能をオフにするには、Preferences>Environment >System と進み、Auto-save files after refactoring をオフにします。

関数の作成

メンバ関数の実装、ベース・クラスの仮想関数の挿入、ゲッターおよびセッター関数の作成、コンストラクタの生成にクイック・フィックスを適用します。関数を生成するための設定は、プロジェクトのビルドと実行の設定で、すべてのプロジェクトに対してグローバルに、またはプロジェクトごとに個別に指定します。

メンバ関数の実装

Create Implementations for Member Functions クイック・フィックスを適用して、すべてのメンバ関数の実装を一度に作成します。Member Function Implementations ダイアログで、メンバ関数をインラインで生成するか、クラスの外部で生成するかを指定します。

メンバー関数の実装ダイアログ

仮想関数の挿入

Insert Virtual Functions of Base Classes クイック・フィックスを適用して、宣言と対応する定義をクラスの内部または外部、あるいは実装ファイル(存在する場合)に挿入します。

仮想関数の挿入ダイアログ

利用可能な関数のリストから、挿入する関数を選択します。リストにフィルタをかけ、再実装関数を非表示にします。

関数宣言にvirtualまたはoverrideを追加することができます。

ゲッターとセッターの作成

Create Getter and Setter Member Functions クイックフィックスを適用して、メンバ変数に対してゲッターとセッターの両方のメンバ関数を作成するか、ゲッターまたはセッターのみを作成します。

ゲッターとセッター ダイアログ

コンストラクタの作成

Generate Constructor クイックフィックスを使用して、クラスの public、protected、または private コンストラクタを作成します。コンストラクタで初期化するクラス・メンバーを選択します。パラメータをドラッグして、コンストラクタ内での順序を指定します。

コンストラクタ ダイアログ

クラスを別のファイルに移動する

Move Class to a Dedicated Set of Source Files クイック・フィックスを適用して、クラスをヘッダー・ファイルと実装ファイルの別々のセットに移動します。

ヘッダーファイルと実装ファイルに名前を付ける

ヘッダーファイルと実装ファイルのパスとファイル名を指定します。

実装ファイルを省略するには、Header file only を選択します。

シンボルの検索]、[クイック・フィックスの設定の指定]、[クイック・フィックス]、[C++ クイック・フィックス]、[シンボルの名前の変更]、および [QML クイック・フィックス]も参照して ください。

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.