以前、依存関係グラフと依存関係ブラウザーについて、フィルタリング可能な 依存関係の種類 についてご案内しました。
今回は、情報ブラウザー画面の References に表示される依存関係の種類とその意味についてご紹介します。
C言語における、依存関係の種類とその意味は、以下の通りです。
この一覧は代表的な依存関係であり、その他の種類もあります。
| 依存関係 | 意味 |
|---|---|
| Addr Use | アドレス参照 |
| Call | 呼び出し |
| Cast | キャスト |
| Declare | 宣言元 |
| Define | 定義元 |
| Deref Modify | デリファレンスでの変更 (インクリメント/デクリメント/複合代入) |
| Deref Set | デリファレンスでのセット |
| Deref Use | デリファレンスでの参照 |
| Include | インクルードの参照 |
| Init | 初期化 (定義と同時に初期化) |
| Macro | マクロ定義での参照 |
| Modify | 変更 (インクリメント/デクリメント/複合代入) |
| Return | return 句での参照 |
| Set | 代入 |
| Type | 型定義 |
| Use | 参照 |
※Derefはデリファレンス (Dereference) の略であり、ポインタや配列で参照の指し示す値を取り出す場合に、Deref が付きます。
C言語のサンプルコードと、その情報ブラウザー画面の References を下記に示します。
サンプルコード
----------------------
01 #include
02 int num = 0;
03
04 int foo () {
05 int *p;
06 num = 100;
07 num++;
08 num += 10;
09 num <<= 1;
10 *p = 10;
11 *p--;
12 p = #
13 printf ("num = %d *p = %d\n", num, *p);
14 return num;
15 }
----------------------
※行頭は行番号を示します。
情報ブラウザー画面
グローバル変数 num の表示

ポインタ変数 p の表示

Understandの解析では、このように、各エンティティ (変数や関数など) の詳細なリファレンス情報を取得することができますので、コードリーディングなどに是非ご活用ください。

