gdb
は、複素数を_M_value = xxx + yyy*I
(タイプはcomplex double
)と表示します(CまたはC++を使用するプログラムをデバッグする場合)。GDB - 複素数の実数部と虚数部へのアクセス
デバッグ中に、その数値に因子を掛けて印刷する必要があります。
次んではない作品:
print a * 8.0
私はArgument to arithmetic operation not a number or boolean
を取得します。
また、実数部と虚数部にアクセスすることができないため、上記の処理を行うgdbマクロを作成できます。私の現在の解決策は、複雑な値と配列を操作するためのC関数を記述し、その関数をgdbから呼び出すことです。どういうわけか、これはちょうどいい気分ではありません。
あなたは、標準C++の複雑なテンプレートを使用していましたか?もしあれば、a.real()/ a.imaj()は動作していませんか? – neuro
@neuro:ありがとう - .real()と.imag()メソッドは動作します。 – nimrodm
ようこそ。私は人々を助けるための答えに私のコメントを設定しました(評判を得るのでしたか?^^) – neuro