問題タブ [abstract-base-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
451 参照

c++ - 「class shape」には「info」という名前のメンバーはありませんが、追加しても機能しません

コンパイルするコードを取得しようとしています (このコード) が、25 行目をコメントアウトする
virtual void info()=0;
と、コンパイルされません:

しかし、25行目を維持すると、純粋仮想関数に関する非常に長いエラーが発生します...

等々...

私が間違っていることについて誰かが私に考えを与えることができますか? ありがとう。

0 投票する
1 に答える
4683 参照

python - 抽象基本クラスに基づいて例外をキャッチする

次のような抽象基本クラスを持つ例外クラスがあるとします。

ProperSubclassでキャッチできるようですが、ではキャッチできMyExceptionsませんValueError

私の質問は、組み込み例外を抽象基本クラスでキャッチできるようにする必要があるかどうかです。もしそうなら、どのように?そうでない場合、ルールは何ですか?

これを尋ねる別の方法は次のとおりだと思います: 節を除いて isinstance()/issubclass() を適切に使用してマッチングを行いますか?そうでない場合(そうであるように)、何使用しますか? おそらく、C の実装には怪しげなショートカットがいくつかあるでしょう。

0 投票する
2 に答える
1898 参照

python - Abstract (abc を使用) であるにも関わらず、Python クラスをインスタンス化できます。

これは、「python の abc モジュールを使用して抽象クラスを作成する」というこの質問に対する回答を参照したものです。(@alexvasselによって、回答として受け入れられました)。

提案を試してみましたが、不思議なことに、その方法を使用するための提案に従っているにもかかわらず、うまくいきabcません。したがって、ここに質問として投稿しています。

ここに私のPythonコードがあります:

このモジュールを実行すると、コンソールに次のような出力が表示されます。

その受け入れられた答えとは対照的に

それで、私は何を正しくまたは間違っていますか?なぜ機能し、失敗しないのですか?これについての専門家の洞察に感謝します。

0 投票する
1 に答える
830 参照

c++ - STL マップと純粋仮想基底クラス

私は長い間 C++ を使用していません。私はいくつかのポリモーフィックな動作を表示しようとしています:

だから私の主な機能では、私が呼び出すとき:

私は期待します:

これが正しい方法かどうかはわかりません。コードをコンパイルすると、次のエラーが表示されます。

これらの行を指します:

ありがとうございました。

0 投票する
3 に答える
1442 参照

c# - C# Xml-抽象基本型の派生型へのシリアル化 - TypeName プロパティ定義が勝つ?

私のシナリオ:

XmlElement タグで装飾されたプロパティで定義したオブジェクトと、定義した型を持つオブジェクトがあります。そのうちのいくつかは、それぞれの派生型に設定される抽象型として型指定されています。XmlSerializer を使用してこのオブジェクト全体を XML にシリアル化したいのですが、抽象型のすべてのプロパティは、TypeName が派生型の TypeName に設定された要素としてシリアル化される必要があります。

これは、オブジェクトがどのように構造化されているかの例です。

ただし、MainObject の新しいインスタンスを作成し、そのプロパティを設定してシリアル化すると、生成された XML は次のようになります。

私が欲しいのはこれです:

ここで私が間違っている手がかりはありますか?

0 投票する
1 に答える
1818 参照

c++ - 基本/派生型の戻り型を持つ抽象クラスの純粋仮想関数

次のように、基本クラスの各派生クラスに、派生クラスの型を戻り値の型として持つ関数 (この場合は後置演算子) を実装させたいと考えています。

これにより、次のようなエラーが生成されreturn type 'A' is an abstract classます。何をすべきか?私が理解している限り、後置は型への参照/ポインターではなく、実際の型を返す必要があります。