問題タブ [derived-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.
c++ - 基本クラスを派生クラスの混乱にキャストするc++
と呼ばれる基本クラスと、などbase
と呼ばれる派生クラスを作成する場合、基本クラスのインスタンスのコレクションを使用します。要素を取得して使用しようとすると、C++はそのタイプがベースクラスの、おそらくベースのから取得したためです。これは、このオブジェクトがベクターに入れられたときにこのオブジェクトが存在することを知っていた、特定の派生クラスにのみ存在する機能を使用したい場合の問題です。derived_1
derived_2
std::vector
そこで、要素を想定されているタイプにキャストしましたが、これは機能しないことがわかりました。
そして、それはポインタのことであることを思い出しました。いくつかの調整の後、これは今うまくいきました。
これは正しいですか、それとも、たとえば、abc_cast()
より少ない混乱でそれを行う機能がありますか?
編集:
私はこれを別の質問に拡張する必要がありました。完全な解決策がそこに示されています。stackoverflow.com...なぜポリモーフィックタイプのエラーとクリーンアップの質問
c++ - 派生クラスから基本クラスの保護されたメソッドにアクセスするにはどうすればよいですか?
これが私を悩ませるコードのサンプルです:
保護されたオーバーライドされた関数にどのようにアクセスしますか?
ご協力いただきありがとうございます。:o)
c++ - C ++で封印されたクラスを定義する方法は?
他のクラスに継承されるクラスを停止する方法。
c++ - 派生クラスのC++reinterpret_cast
親クラス:
派生クラス:
クラスPointsListの1つのオブジェクトを別のオブジェクトPoints3DTopoListにキャストしたいと思います(またはその逆)。
そのような変換は許可されていますか?
そして逆変換?
各Point3TopoのFaceポインターは、NULLに初期化されますか、それとも未定義になりますか?
c# - WPFでカスタムコントロールを作成するときに複数のクラスから派生する必要性を克服する方法
C#は、複数のクラスからの派生を制限するという点でC ++ではないことを知っていますが、WPFアプリケーションを開発するときにそれを克服する方法は何ですか。
私のシナリオでは、スライダーであるサードパーティのコントロールがあります。これはコンテンツコントロールから派生していないため、コンテンツプロパティがありません。しかし、私はそのプロパティを持っている必要があります。いくつかの解決策が思い浮かびました。
- 複数のクラスから派生(C#では不可能)
- 添付プロパティをサードパーティのコントロールに追加します
- サードパーティのコントロールを拡張し、Contentプロパティとそれが機能するために必要な他のすべてのプロパティを追加します。
- カスタムコントロール内にサードパーティのコントロールをカプセル化し、コンテンツコントロールから派生させます。
どのアプローチが最適ですか?または、他のアプローチをご存知の場合はお知らせください。
c++ - 抽象基底クラスのオブジェクトのコピーを作成する
抽象基本クラスから派生したオブジェクトへのポインターがあり (そのため、そのクラスの新しいオブジェクトを作成できません)、そのオブジェクトのディープ コピーを作成したい場合、それを達成するためのより簡潔な方法はありますか?抽象基本クラスcopy
に、すべての継承クラスを実装する必要がある新しい純粋仮想関数を作成させるには?
c# - XmlSerializerを使用して、タイプを事前に知らなくても、基本クラスまたは派生クラスのオブジェクトを逆シリアル化するにはどうすればよいですか?
XmlSerializer
C#で、を使用して、基本クラスまたはいくつかの派生クラスのいずれかである可能性のあるオブジェクトを、事前に型を知らずに逆シリアル化するにはどうすればよいですか?
私の派生クラスはすべて、データメンバーを追加します。クラスオブジェクトをシリアル化および逆シリアル化できるシンプルなGUIを作成しました。ユーザーが入力することを選択したフィールドに基づいて、継承されたクラス(または基本クラスのみ)が適切であるため、オブジェクトをシリアル化します。
シリアル化に問題はありません。問題は逆シリアル化です。XmlSerializer
クラスを事前に知らなくても、データを正しい派生クラスに逆シリアル化するにはどうすればよいですか?私は現在XmlReader
、XMLファイルの最初のノードを読み取り、そこからクラスを決定するためにを作成しています。これは私の目的には機能するようですが、非常に洗練されていないソリューションのようです。
以下にサンプルコードを投稿しました。助言がありますか?
c# - 派生クラスと基本クラス、基本を明示的に設定できますか?
派生スーパーカーの基本クラスを設定するにはどうすればよいですか?
たとえば、次のように単純に SuperCars の基本クラスを設定したいとします。
基本的に、Car オブジェクトがある場合、SuperCar オブジェクトをセットアップするために、車のすべてのプロパティを手動で繰り返し処理したくありません。これが唯一の方法だと思いますが、他の方法で実行できる場合ははるかに良いでしょう。
c# - 派生クラスのインスタンスを操作するときに基本クラスをシリアル化するにはどうすればよいですか?
次のような構造になっています
次のコードを使用してこれをシリアル化したい:
Child
コード内のタイプのオブジェクトを操作していますが、Child
オブジェクト内にシリアル化できないフィールドがあります(例:HashAlgorithm)。Parent
したがって、次のコードを使用してタイプへの変換を試みました。
ただし、これは、HashAlgorithm
このフィールドを含まない子をシリアル化しようとしたにもかかわらず、シリアル化できないエラーを返します。どうすれば必要なことを達成できますか?
objective-c - プロトコルでデリゲート メソッドを作成する
思い通りにプロトコルを構築できないようで、派生クラスの使用に関する問題に絞り込みました。ココアクラスを使えばうまくいくようです。これが私が持っているものです...
MyView クラスは...
そのため、ビルドしようとすると、「'MyView' の前に ')' が必要です」というエラーが表示されます。カスタム クラス MyView を UIView に置き換えると、コードがコンパイルされます。私が見落としている何かを誰かが見てくれることを願っています。どんなアイデアでも大歓迎です。
ありがとう。