C++ のインレイヒント
パラメーター名ヒント
パラメーター名のヒントは、メソッド呼び出しで対応する引数の横にパラメーター名を表示するエディターの装飾です。これらは、関数呼び出しと集計の初期化でパラメーターの長い(場合によってはネストされた)リストを見つけるのに役立ちます。
以下の例では、パラメーター名のヒントは、高さと幅の引数が混在しているという事実を見つけるのに役立ちます。
パラメーター名のヒントは、初期化するメンバーの名前を示し、C++17 以降の複雑な集約の初期化を解くのに役立ちます。
パラメーター名のヒントは、依存コードでも使用できます。
名前空間の名前のヒント
LLVM(英語) または Google(英語) のガイドラインに従っていない場合、ネームスペース定義の最後にあるネームスペース名のヒントは、括弧を閉じるネームスペースの後にコメントにネームスペースを追加することを推奨している場合に役立ちます。
プリプロセッサーディレクティブヒント
プリプロセッサーディレクティブヒントは、条件付き包含(#ifdef
、#ifndef
、#if
、#endif
、#else
、#elif
)がマクロ定義にどのように対応するかをすばやく理解できます。
型名のヒント
型名のヒントは、コンパイラーが周囲のコードから自動的に型を推測するときに役立ちます。JetBrains Rider は、構造化バインディング、依存コード、関数呼び出し後の自動変数、関数およびラムダ戻り値の型名のヒントを提供します。
自動変数
この種のヒントは、auto
または decltype(auto)
型指定子を使用する、型が自動的に推定される変数で使用できます。デフォルトでは、初期化子がコンストラクター呼び出し、定数、明示的なキャストである場合など、推定された型が初期化子式から明らかな場合、ヒントは非表示になります。
関数とラムダの戻り値の型
関数とラムダの戻り値の型は、コードで省略されている場合、return ステートメントから自動的に推測できます。
構造化バインディング
C++17 の構造化バインディング宣言では、構造化バインディングのタイプを明示的に指定できないため、型ヒントが特に役立ちます。
依存コード
型ヒントは依存コードでも機能しますが、パフォーマンスに影響を与える可能性があることに注意してください。この場合、JetBrains Rider 設定 Ctrl+Alt+S の
ページで依存コードヒントを無効にします。関数呼び出し
デフォルト設定では、この種の型ヒントは、複数行のチェーンメンバー関数が呼び出された後にのみ表示されます。
型変換のヒント
型変換のヒントは、非表示の暗黙的な変換を表示できます。これにより、潜在的なパフォーマンスと正確性への影響を認識できます。
JetBrains Rider は、オブジェクトのコピー、変換コンストラクターまたは集計初期化を使用したオブジェクトの初期化、変換演算子の呼び出しなど、さまざまな種類のクラス型変換のヒントを表示します。
組み込み型間の標準変換のヒントを有効にすることもできます。たとえば、精度を失ったり、型の符号を変更したりする可能性のある数値型間の変換などです。
ヒントには詳細な構成オプションがあります。
関連ページ:
インレイヒント
インレイヒントは、コードの読みやすさを向上させる構成可能なエディターの装飾です。プッシュツーヒントモード:インレイヒントは役立つ場合がありますが、一方で、エディタースペースを取り、場合によっては冗長に見えることがあります。プッシュツーヒントモード(デフォルトで有効になっている)を使用できます。ヒントを非表示にして、Ctrl キーを押したままにすることで必要な場合にのみヒントを表示できます。インレイヒントを常に表示または非表示にする場合は、JetBrains Rider 設定のページにあるデフォ...
コード階層
コード分析に加えて、JetBrains Rider のコード分析では、呼び出しチェーンと値チェーンを構築してメンバーを調査できます。呼び出し階層:呼び出し階層は、関数の呼び出し元(スーパータイプ)または呼び出し先(サブタイプ)を表示します。受信呼び出しを調べるには、カーソルを任意の機能に置きます。を押して、これを調べるリストから受信コールを選択します。発信呼び出しを調べるには、任意の関数にカーソルを置きます。を押して、これを調べるリストから発信コールを選択します。呼び出し追跡結果ウィンドウ
C++ のリファクタリング
リファクタリングを実行するシンボルにキャレットを置き、リファクタリングするコードフラグメントを選択するか、ツールウィンドウ内の項目を選択します。以下のいずれか 1 つを実行します: メインメニューからを選択し、目的のリファクタリングを選択します。このメニューで使用できるリファクタリングのリストは、現在のコンテキストによって異なります。JetBrains Rider がコンテキストのリファクタリングを提案できない場合、メニュー全体が無効になります。メインメニューからを選択するか、を押して、適用可能...