Home > ViVi 2.08 新機能 > C/C++ ソース編集支援機能

■ ローカル変数・仮引数宣言位置へジャンプ

上図の様に ローカル変数 または 仮引数 にカーソルがある時に [検索]-[定義・宣言位置へジャンプ] または Alt + ] を実行したときは C/C++ の簡易構文解析を行い、変数の定義行へジャンプするようにしました。
元の位置に戻るには [検索]-[タグ・tags ジャンプ、grep 位置へ戻る] または Alt + [ を実行します。

変数がローカル変数で無い場合、メソッド定義内であれば、クラスメンバを検索します。 クラスメンバに当該シンボルが無い場合はグローバルな変数定義を探します。

ローカル変数に限らず、カーソル位置シンボルのすべての定義位置へジャンプしたい場合は [検索]-「全型の定義・宣言位置へジャンプ」または Ctrl + Alt + ] を実行してください。

■ for初期化文宣言変数の有効範囲

  for(int i = 0; i < N; ++i)

上図の様に、forの初期化文で変数宣言を行った場合、VC6 などの古いコンパイラでは for文以降も変数宣言が有効ですが、 最近のコンパイラではfor文内だけで変数宣言が有効になります。
ローカル変数宣言箇所へジャンプ動作は上記の仕様に依存するので、設定ダイアログに [Global Settings]-[その他]-[for文の初期化文で宣言された変数の有効範囲:] を追加し、「for文ブロック内のみ」、「for文以降も有効」を選択可能にしました。

■ スコープを考慮した定義位置へジャンプ

オブジェクト.メンバ名 または オブジェクト->メンバ名 で、オブジェクトの型を認識可能な場合、 メンバ名にカーソルを当てて [検索]-[定義・宣言位置へジャンプ] または Alt + ] を実行したときは、 型のメンバ名の定義・宣言箇所にジャンプするようにしました。

クラス宣言ブロック中で、メソッド名、メンバ変数名にカーソルを当てて [検索]-[定義・宣言位置へジャンプ] または Alt + ] を実行したときは、 型のメンバ名の定義・宣言箇所にジャンプするようにしました。

カーソル位置シンボルのすべての定義位置へジャンプしたい場合は [検索]-「全型の定義・宣言位置へジャンプ」または Ctrl + Alt + ] を実行してください。

■ 宣言位置へジャンプ

クラス名で Alt + ] または [検索]-[定義・宣言位置へジャンプ] を実行した場合、 コンストラクタ定義箇所、クラス宣言箇所の一覧が表示されます。
クラス宣言箇所だけにジャンプした場合は Shift + Alt + ] または [検索]-[宣言位置へジャンプ] を実行するとよいです。