申し訳ありませんが、私はC++にかなり慣れていますが、この種のことは可能ですか?
私は巨大なコンストラクターを持つスーパークラスを持っているので、いくつかの作業を行ってから new ParametricShape(blah blah blah...); を返す静的ファクトリ型コンストラクターを作成しました。
class ParametricShape: public ModelView{
public:
//actually has 15 arguments didn't want to type them all up
ParametricShape(func x, funcy, funcz, float lu, float hu, float lv, float hv, int sv, int su);
static ParametricShape* makeDonutShape(float);
}
後で、この静的メソッドを拡張クラスで使用したいと考えています。
class Donut : public ParametricShape{
Donut();
}
Donut::Donut(){
this = ParametricShape::makeDonut(1.0f);
}
これは私がやろうとしていることのようなものです.私はさまざまなコピーコンストラクタとそうでないものをいじくり回しており、あらゆる種類のさまざまなエラーが発生しています. 現在、それは次のように言っています:割り当ての左オペランドとして左辺値が必要です。助けてくれてありがとう!