私は2次方程式の構造体を持っています。私はそれをVisual Studio 2008のデバッガでより良く見せたいと思います。ここでは構造体です:autoexp.datプレビューで連続#ifブロックを使用できますか?
struct QuadraticEquation
{
float squareCoefficent; float linearCoefficent; float yIntersection;
}
私はそれがデバッガで適切にフォーマットされた式のように表示したい:
3.0x^2 - 1.3x + 6.5
ここAUTOEXP.DATプレビュースクリプトは次のとおりです。
QuadraticEquation{
preview
(
#if($c.squareCoefficent != 0.0f)
(
#($c.squareCoefficent, "x^2")
)
#if($c.linearCoefficent < 0.0f)
(
#(" - ", -$c.linearCoefficent, "x")
)
#elif($c.linearCoefficent > 0.0f)
(
#(" + ", $c.linearCoefficent, "x")
)
#if($c.yIntersection < 0.0f)
(
#(" - ", -$c.yIntersection)
)
#elif($c.yIntersection > 0.0f)
(
#(" + ", $c.yIntersection)
)
)
}
プリティまっすぐ進む。私は、コードを実行したときしかし、私は次のエラーメッセージが表示されます:
ERROR! Autoexp.dat:line(286) for 'QuadraticEquation': Failed to match ')' for preview/children rule
私は正方形の係数支店以外のすべてを削除した場合#if($c.linearCoefficent < 0.0f)...
始まり数が第2の#if枝に対応する行、エラーではありません。シーケンシャルな#ifブロックを持つことができないということを意味するならば、dllに落とされることなく、ここで私が望むことを他の方法で行うことができますか?
ええ、私はこれらの+/-の組み合わせを手作業でやっているわけではありません。ジャンプすることができます。 'std :: complex <*>'を指摘してくれてありがとう。 – tenpn