multiple-inheritance

    6熱度

    1回答

    是否可以在PER-FILE /項目項目基礎上定義編譯器常量?我想實現一個數據庫抽象層(DAL),它分離所有讀取和寫入任務,但保留一個可以執行這兩個操作的DAL,但不需要多次實現相同的方法(抽象類表示那裏對於每個支持的數據庫類型將是1個實例類)。 所以我想我DAL分開這樣的: abstract class ReadDAL abstract class WriteDAL abstract clas

    0熱度

    2回答

    我是新的C++,我試圖實現以下的設計。 class A { do(); doMore(); } // abstract class B { do(); doMore(); } // abstract class X : public A, public B // Also abstract { foo() { // common code A::do(

    0熱度

    2回答

    我試圖使用多繼承。 人是我的基礎班。 學生和Angestellter繼承受保護的屬性。 WissenschaftlicheHilfskraft也應該繼承這些屬性(來自Person,Student,Angestellter),但我無法在最後一個派生類中調用方法get_name()。爲什麼? #include <iostream> using namespace std; class Pers

    0熱度

    1回答

    我想創建兩個A類和B類,其中B是A的一個輕微但顯着的變體,然後創建第三個類C,它可以繼承A或B並添加功能給他們。問題是,我如何告訴C根據我的偏好繼承A或B? 爲了讓事情更加清楚,假設我有這樣的代碼: class A: def __init__(self, x, y): self.x = x self.y = y def first(self):

    1熱度

    1回答

    對於這個問題,我想介紹一下我目前的設計和使用特質的想法。我想知道我對特質的理解是否正確,以及我的問題是否可以用不涉及他們的另一種設計來解決。 在我的框架我目前的類層次結構是這樣的: interface IPage { /* ... */ } interface IForm extends IPage { /* ... */ } abstract class AbstractPage imple

    0熱度

    1回答

    最近我試過玩過多個類繼承(在Python 3中),這是我以前從未做過的(從來沒有真正用過它)。 我很驚訝它有多「壞」。它不像我期待的那樣行事。我瞭解MRO和訂單解決方案,但除非我錯過了一些東西,否則設計不允許在鏈條末尾提供額外的參數。 讓我舉一個簡單的例子: class BaseA(object): def __init__(self, *args, **kwargs): s

    0熱度

    1回答

    正如How does Python's super() work with multiple inheritance?中所解釋的,super也可用於多繼承,因爲它將在父代中查找屬性。但是什麼屬性?子類已經包含一個super(如果你看下面的代碼)。我如何指定我想要的屬性?我想要Error的構造函數。 class Error(object): def __init__(self, value

    4熱度

    7回答

    代碼打印所有的構造函數。我讀到構造函數在我們從另一個類派生一個類時沒有被繼承。那麼爲什麼創造c從b和a class A { public: A() { cout << "A's constructor called" << endl; } }; class B { public: B() { cout << "B's constructor called" <<

    4熱度

    1回答

    考慮兩個特性TestTrait1和TestTrait,並假設NewObject擴展了這兩個特性。 這個想法是在TestTrait中的TestTrait1中使用變量。下面的代碼工作得很好。 scala> trait TestTrait1 { | val arguments1: Array[String] = Array("1","2") | } defined trait TestTrait

    0熱度

    1回答

    我正在嘗試創建一個調用其他5個python腳本的同時傳遞數組,然後傳遞5個腳本中的每一個的python腳本對該數組執行操作並將不同的數組返回到初始腳本。 初始腳本然後意識到何時5已經返回值,然後對這5個數組執行操作。 我認爲解決方案是類似於 os.system(./script1.py arg1),os.system(./script2.py arg2) 但我不確定如何繼續。