C++コードのスタイル
Qt Creator は、ClangLibFormatライブラリを使用して、C++コードのフォーマットとインデントを自動的に行います。これは、プロジェクトまたは組織全体のコーディング・スタイルを強制します。
C++ エディターのグローバルなインデント設定を指定するには、Preferences >C++ >Code Style にアクセスしてください。
次の表では、使用可能な環境設定について説明します。
| 環境設定 | 説明 |
|---|---|
| Formatting mode | 選択します:
|
| Ignore files greater than | 大きなファイルを無視して解析を速くする。解析するファイルの最大サイズを指定します。 |
| Format while typing | 入力中にフォーマットを適用する。 |
| Format edited code on file save | ファイルを保存するときに、編集したコードにフォーマットを適用します。ファイルの保存中にこの設定を一時的に無効にするには、File にアクセスして、Save Without Formatting を選択します。 |
| Use custom settings | すべてのプロジェクトの ClangFormat スタイルをグローバルに変更します。 |
| Custom settings | 変更する設定を選択し、Copy を選択します。設定に名前を付け、OK を選択します。 |
| ClangFormat | ClangFormat スタイル・オプションを編集します。ライブ・プレビューでは、設定によってインデントがどのように変わるかを確認できます。無効な値を入力すると、警告メッセージが表示されます。 |
組み込みインデントの使用

Formatting mode でUse Built-In Indenter を選択すると、次の方法を指定できます:
- TabキーとBackspaceキーの押下を解釈します。
- インデンターが、最後にセミコロンを必要としない完全なステートメントとして解釈するマクロを追加します。
- クラス、関数、ブロック、名前空間の内容をインデントする。
- クラス、名前空間、列挙型、関数、ブロックの中括弧をインデントする。
- switch文とその内容を制御する。
- 継続行の整列
- 型や宣言内のポインタ (*) や参照 (&) を、識別子や型名、左または右の
constやvolatileキーワードにバインドする。
コンテンツに対する設定の指定
クラス内の public 文、protected 文、private 文、およびそれらに関連する宣言をインデントできます。
また、関数やブロック内の文や、名前空間内の宣言もインデントできます。

中括弧の設定の指定
クラス、名前空間、列挙型、関数の宣言やコードブロックをインデントできます。

switch 文の設定の指定
switch文の中で、case文やdefault文、それらに関連する文やブロックをインデントすることができます。

整列の指定
= や+= のように、代入後のトークンに継続行を揃えるには、Align after assignments を選択します。General タブで、継続行の整列に関する追加設定を指定できます。
また、条件文にスペースを追加して、次の行と揃わないようにすることもできます。通常、これはif ステートメントにのみ影響します。

ポインタと参照の結合
型や宣言のポインタ (*) や参照 (&) を、識別子や型名、左または右のconst やvolatile キーワードにバインドするには、Pointers and References タブのチェックボックスを選択します。
* と& の文字は、関数へのポインタと配列へのポインタの識別子に自動的にバインドされます。

コマンドラインからのClangFormatファイルの作成
ある定義済みのスタイルの設定オプションを持つ.clang-format ファイルをコマンドラインから作成できます。例えば、LLVMスタイルのフォーマット・ファイルを作成するには、次のコマンドを入力します:
clang-format -style=llvm -dump-config > .clang-format
テキストまたはコードのインデント」、「コード・スタイルの指定」、「ビヘイビア」、「Qt Quick コード・スタイルの指定」、「Nim」も参照してください 。
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.