スーパークラスコンストラクターC++を呼び出すためのルールは何ですか?
C ++では、いくつかのクラスを派生させることができます。派生クラスのコンストラクターを呼び出すときに、スーパークラス(基本クラス)コンストラクターを呼び出す必要がある場合があります。 Javaとは異なり、スーパークラスの参照変数はありません。コンストラクターがパラメーター化されていない場合は、派生クラスで自動的に呼び出されます。そうでない場合は、派生クラスの初期化子リストにスーパークラスコンストラクターを配置する必要があります。
この例では、最初は引数のないコンストラクターが表示されます。
例
#include <iostream> using namespace std; class MyBaseClass { public: MyBaseClass() { cout << "Constructor of base class" << endl; } }; class MyDerivedClass : public MyBaseClass { public: MyDerivedClass() { cout << "Constructor of derived class" << endl; } }; int main() { MyDerivedClass derived; }
出力
Constructor of base class Constructor of derived class
次に、パラメーターを受け取ることができるコンストラクターを見てみましょう。
例
#include <iostream> using namespace std; class MyBaseClass { public: MyBaseClass(int x) { cout << "Constructor of base class: " << x << endl; } }; class MyDerivedClass : public MyBaseClass { //base constructor as initializer list public: MyDerivedClass(int y) : MyBaseClass(50) { cout << "Constructor of derived class: " << y << endl; } }; int main() { MyDerivedClass derived(100); }
出力
Constructor of base class: 50 Constructor of derived class: 100
-
Java 9のサブスクリプションインターフェイスのルールは何ですか?
サブスクリプション データを仲介する目的で、1人のパブリッシャーと1人のサブスクライバーが共有できます 交換 。それがsubscribe()の理由です メソッドは作成されたサブスクリプションを返しませんが、代わりに voidを返します 。サブスクリプションは、 onSubscribe()を介してのみサブスクライバーに渡されます メソッドコールバック。サブスクリプションインターフェースには、 request()の2つのメソッドが含まれています。 およびcancel() 。 構文 public interface Subscription { public void re
-
Java 9のサブスクライバーインターフェイスのルールは何ですか?
サブスクライバー インターフェイスは、 onNext()を介してアイテムを受信するためにパブリッシャーにサブスクライブします メソッド、 onErrorによるエラーメッセージ () メソッド、または onComplete()を介してこれ以上アイテムが期待されないというシグナル 方法。これらのいずれかが発生する前に、パブリッシャーは onSubscription()を呼び出します メソッド。 public interface Subscriber<T> { public void onSubscribe(Subscription s); &nb