Understand のグラフィカルビューの Control Flow Graph について、以前 Understand 3.0 の新機能 でご紹介しました。
その後のバージョンアップで、Control Flow Graph のコメント表示のグラフオプションが変更されました。
また、Calls/Called By Graph で関数コメントが表示可能になりましたので、Understand 4.0 バージョンでのコメント表示、表示仕様について紹介します。
関数内のコメントを表示する場合
関数内のステートメントの前に記載されているコメント、および、行コメントを表示します。
フォーマットには特に規則はなく、1行コメント(//)、複数行(/*…*/, “/**”~”*/”)、行コメントのいずれの書き方にも対応しています。
ただし、コメントとステートメントの間に空白行が含まれる場合、コメントは表示されません。
-
- Control Flow Graph
グラフオプションで[Comments]-[On]を選択します。
-
- Cluster Control Flow グラフ
グラフオプションで[Show Comments]-[On]を選択します。
※行コメントのみに対応
例)
#include <stdio.h>
/*
* サンプル関数
* @param
* @return
*/
void commentSample(){
// 変数定義1
int i = 0;
// 変数定義2
int j = 0; // 行コメント
/*
* 繰り返し処理の前のコメント
*/
for( i = 0; i >= 3; i++ )
{
// 条件文の前のコメント
if ( i > 1 ) // 行コメント
{ /* 条件文の後の行コメント */
// 処理
printf("i は 1 より大きい"); // 行コメント
}
}
/* 空白行が含まれる場合 */
// 変数定義3
char ctest;
// 分岐文の前のコメント
switch(ctest) {
// /*
// 条件1
// */
case 'a':
/**
処理1
(複数行)*/
printf("char `a` です。");
break;
/****************************
条件2
****************************/
case 'b':
// 処理2
printf("char `b` です。");
break;
// デフォルト
default:
break;
}
}
例) Control Flow Graph
関数コメントを表示する場合
関数コメント(Javadocのようなコメント、関数の前に記載されたコメント、関数ヘッダ)を表示します。
-
- Calls/Called By Graph
グラフオプションで[Comments]-[On]、[Text]-[No Truncate]を選択します。
例) Calls Graph
なお、C/C++言語の場合、以下の制限があります。
- C++言語:
関数定義(Define)のコメントは表示されません
関数宣言(Declare)のコメントを表示します - C言語:
関数定義(Define)のコメントを表示します
コメントを表示させた状態のグラフは、画像ファイル(JPG,PNG,SVG)・Visio XML・DOT 形式のファイルに保存、印刷することができます。
ソースコードレビューなどに是非ご活用ください。