0
4

2 に答える 2

1

ここでエラーが発生していると思います:

polynomial1->get(0)->coefficient

そして(これも私の推測ですが)これは、get関数が基本クラス( )で定義されており、 (ではない)Dataへのポインターを返すためです。そしてもちろん持っていません(持っているだけです)。DataPolynomialTermDatacoefficientPolynomialTerm

getコンパイラは、によって返されたポインタが実際にPolynomialTermインスタンスを指していることを知りません。したがって、エラーが発生します。

これを修正する 1 つの方法は、ポインター型を実際の型にキャストすることPolynomialTerm*です。

dynamic_cast<PolynomialTerm*>(polynomial1->get(0))->coefficient
于 2013-07-14T18:29:20.207 に答える
0
PolynomialTerm(int coefficient, Variable* variable):
     coefficient(coefficient), variable(variable){}

コンパイラはcoefficient(coefficient). 引数名またはメンバー名を変更します。

PolynomialTerm(int coef, Variable* var):
     coefficient(coef), variable(var){}
于 2013-07-14T18:30:17.137 に答える