C++ のコンテキストアクション
ReSharper は Cpp に次のコンテキストアクションを提供します。
名前 | 説明 |
---|---|
定義なしで関数に '= default' 指定子を追加する | 定義のない関数をデフォルトとしてマークします |
定義なしで関数に '= delete' 指定子を追加する | 定義のない関数を削除済みとしてマークします |
波括弧の追加 | ステートメントを中括弧で囲みます |
定義なしで仮想関数に 'pure' 指定子を追加する | 'pure' 指定子で定義されていない仮想関数をマークします |
cv 修飾子を配置します | 構文スタイルに従って、宣言内の 'const' および 'volatile' 修飾子を配置します |
オーバーライドする関数に「virtual」および「override」指定子を配置します | 構文スタイルに従ってオーバーライド関数の 'virtual' および 'override' 指定子を配置する |
現在の関数のシグネチャーを変更 | 現在の関数のシグネチャーを変更 |
#include ディレクティブを山括弧から引用形式に変換 | #include ディレクティブを山括弧から引用形式に変換 |
#include ディレクティブを引用符から山括弧形式に変換 | 山括弧形式に引用された #include ディレクティブを変換します |
'?:' 式を 'if' 文に変換 | 三項条件演算子を同等の 'if' ステートメントに変換します |
型エイリアスを typedef 宣言に変換します | 型エイリアスを同等の typedef 宣言に置き換えます |
typedef 宣言を型エイリアスに変換します | typedef 宣言を同等の型エイリアスに置き換えます |
列挙型をスコープ付き列挙型に変換する | スコープのない列挙型をスコープ付きの列挙型に変換します |
列挙型を文字列に変換する | 列挙型を文字列に変換するテンプレートから関数を作成します 詳細は、列挙型を文字列に変換 (enum-to-string ヘルパーを生成する) を参照してください。 |
呼び出しをパイプに変換する | ビューの直接呼び出しを範囲パイプに変換します |
Convert 句をパラメーター制約に変換する | Required 句をテンプレートパラメーター制約に変換する |
'if' ステートメントを '?:' 式に変換 | 'if' ステートメントを同等の三項条件演算子に変換します |
ビューの直接呼び出しに変換 | 範囲パイプをビューの直接呼び出しに変換します |
ネストしたネームスペース定義に変換する | ネストされた名前空間定義構文を使用して、一連のネストされた名前空間を単一の名前空間に置き換えます |
ネストされた名前空間に変換する | ネストされた名前空間定義を一連のネストされた名前空間に置き換えます |
非生の文字列リテラルに変換する | 生の文字列リテラルを非生に変換します |
未加工の文字列リテラルに変換 | 文字列リテラルを raw に変換します |
通常の戻り値の型に変換 | 関数宣言で末尾の戻り値の型を通常の戻り値の型に変換します |
構造化バインディングに変換する | 変数を構造化バインディング宣言に変換する |
末尾の戻り値の型に変換 | 関数宣言で、通常の戻り値の型を後続の戻り値の型に変換します |
派生クラスの作成 | 派生クラスを作成します |
派生クラスの作成 | 派生クラスを作成します |
派生クラスの作成 | 派生クラスを作成します |
派生インターフェースを作成する | 派生インターフェースを作成します |
派生インターフェースを作成する | 派生インターフェースを作成します |
派生インターフェースクラスを作成する | 派生インターフェースクラスを作成します |
派生インターフェース構造体を作成する | 派生インターフェース構造体を作成します |
派生参照クラスを作成する | 派生参照クラスを作成します |
派生構造体を作成する | 派生構造体を作成します |
ドモルガンの法則 | ドモルガンの法則に従って、結合または分離操作をその否定された対応する操作に置き換えます |
文書エンティティ | 関数、マクロ定義、名前空間、クラス、列挙型、typedef、エイリアス宣言、グローバル変数、テンプレートからのクラスメンバーのドキュメントを生成します。 詳細については、「ドキュメントエンティティ」を参照してください。 |
選択したコードからメソッドを抽出する | 選択した式またはステートメントから新しいメソッドを作成し、選択を関数呼び出しに置き換えます |
演算子引数を反転する | 選択した演算子の左右のオペランドを反転します。「0 == i」から「i == 0」 |
フリップ関係演算子 | 二項関係演算子のオペランドを反転します |
フォーマット複合ステートメント | キャレットの複合ステートメントをフォーマットします |
ケーススタブを生成 | 指定された switch ステートメントの欠落している case ステートメントを生成します 詳細については、「欠落している case ステートメントを生成する」を参照してください。 |
コンストラクターを生成 | コンストラクターを生成 |
宣言による定義の生成 | 宣言による定義の生成 |
宣言によって定義を生成する | 宣言によって定義を生成する |
インライン定義を生成する | インライン定義を生成する |
宣言によるインライン定義の生成 | 宣言によるインライン定義の生成 |
不足しているメンバーを生成する | 不足しているメンバーを生成する |
モックメソッドを生成する | モックメソッドを生成する |
オーバーライドメンバーを生成する | オーバーライドメンバーを生成します |
コンストラクターパラメーターからフィールドを初期化する | コンストラクターパラメーターからフィールドを初期化します |
選択した式のフィールドを導入 | 選択した式の新しいフィールドを作成します |
選択した名前空間の名前空間エイリアスを導入します | 選択した名前空間の名前空間エイリアスを導入します |
選択した型の typedef/type エイリアスを導入する | 選択した型の typedef または型エイリアスを導入します |
列挙型を使用して紹介します | スコープ付き列挙型の列挙子から using 列挙型宣言を導入します |
選択した式の変数を導入する | 選択した式の新しい変数を作成します |
'?:' 条件を反転します | 三項ステートメントのガード条件を反転し、それに応じてブランチ ' コードをスワップします |
'if' ステートメントを逆転 | 'if' 文のガード条件を反転し、それに応じてブランチのコードを入れ替えます |
宣言を結合する | 複数の宣言を複数の宣言子を持つ宣言に結合します |
メンバー初期化子をデフォルトのメンバー初期化子にする | メンバー初期化子をメンバー初期化子リストからデフォルトのメンバー初期化子に移動します |
ネストした 'if' ステートメントをマージ | 元の条件の結合をチェックする単一の 'if' ステートメントに、ネストされた 2 つの 'if' ステートメントをマージします。 |
制約を requires 句に移動する | テンプレートパラメーター制約を requires 句に移動 |
関数定義をクラスのスコープ外に移動する | 関数定義をクラスのスコープ外に移動します 詳細については、「実装をクラススコープ外に移動する」を参照してください。 |
関数定義をソースファイルに移動 | 関数定義をソースファイルに移動します |
関数定義の移動 | 関数定義の移動 |
論理式を否定する | 論理式を否定する |
波括弧の除去 | コード内の 1 つ以上のステートメントの周囲の不要な波括弧を削除します |
'auto' を明示的な型宣言に置き換えます | 「auto」を明示的な型宣言に置き換えます |
decltype を置き換える | decltype を基になる型に置き換えます |
'decltype(auto)' を明示的な型宣言に置き換えます | 「decltype(auto)」を明示的な型宣言に置き換えます |
明示的な型を「auto」に置き換えます | 変数宣言の明示的な型を「auto」に置き換えます |
インクルードファイルパスのスラッシュを置き換える | 構文スタイルに従って、インクルードファイルパスのスラッシュを置き換えます |
UNREFERENCED_PARAMETER を [[maybe_unused]] に置き換えます | マクロ UNREFERENCED_PARAMETER を属性 [[maybe_unused]] に置き換えます |
#include ディレクティブを並べ替える | #include ディレクティブをソートします |
メンバー初期化子を初期化の順にソートする | 初期化の順序で初期化子リスト内のメンバー初期化子を並べ替えます |
テンプレート引数を明示的に指定する | テンプレート引数を明示的に指定する |
宣言と割り当ての分割 | 代入のある宣言を 2 つの別個のステートメントに分割します |
複数の宣言子による宣言の分割 | 複数の宣言子を含む宣言を複数の宣言に分割します |
代替マクロ呼び出し | マクロ呼び出しの代用 |
マクロ呼び出しをすべてのネストされた呼び出しに置き換えます | ネストされたすべての呼び出しでマクロ呼び出しを置き換えます |
代替テンプレートタイプのエイリアス | テンプレート型エイリアスを基になる型に置き換えます |
代替型定義 | typedef を基になる型に置き換えます |
代替 typedef とすべてのネストした typedef | typedef およびネストされたすべての typedef を基になる型に置き換えます |
typename キーワードと class キーワードを切り替える | テンプレートパラメーター定義で typename を class に、またはその逆に置き換えます |
関連ページ:
C++ のコーディングアシスタンス
ReSharper のコーディング支援機能のほとんどは C++ でもサポートされています。これらの機能の詳細については、コーディング支援セクションの対応するトピックを参照してください。このセクションの主なトピックでは、機能マトリックスを見つけて、C++ で何がサポートされているのかを確認することもできます。このトピックでは、C++ のコーディング支援機能の使用例をいくつか見つけることができます。デフォルトでは、コードインスペクション、クイックフィックス、コンテキストアクションはすべてのソリューシ...
ビルドスクリプトのコンテキストアクション
ReSharper はビルドスクリプトに対して以下のコンテキストアクションを提供します。ターゲット依存関係のプロパティを生成するビルドプロセスへの統合を容易にするために、すべてのターゲットの依存関係を収集するプロパティを作成します。XSD を生成するカスタムタスク、プロパティ、アイテムグループの XML スキーマ定義を生成します。XAML のコンテキストアクション C++ のコンテキストアクション
正規表現の支援
ReSharper は、.NET の正規表現で作業するための豊富なツールセットを提供します。既存の式をすばやく分析し、エラーを見つけて修正できます。ReSharper は、新しい式を入力する際に、自動補完と検証を支援します。文字列リテラルの正規表現:デフォルトでは、ReSharper は、正規表現クラスのメソッドで、パラメーターの正規表現のみを処理します。ただし、正規表現を含む文字列は、文字列定数、フィールド、他のメソッドの引数など、さまざまな場所で定義できます。ReSharper で文字列を...