dbx コマンドによるデバッグ

複数存在する場合の選択

同じスコープレベルから複数のシンボルにアクセスできる場合、dbx は、あいまいさについて報告するメッセージを出力します。


(dbx) func main
(dbx) which block::block
識別子 'block' が複数あります
以下の名前から 1 つ選択してください:
 0)	取り消し
 1)	`Blocks`block.cc`block::block(void)
 2)	`Blocks`block.cc`block::block(char*, int, int, const point&, 
	load_bearing_block*)
>

which コマンドのコンテキストでシンボル名のリストから特定のシンボルを選んでも、dbx またはプログラムの状態には影響しません。いずれにせよ、どのシンボルを選んでも名前を表示するだけです。

which コマンドは、dbx がどのシンボルを検索するかを前もって示すものです。あいまいな名前を指定して、多重定義されていると表示された場合は、該当する複数の名前のうちのどれを使用するかがまだ特定されていません。リストに表示されている名前から 1 つを選んでください。