dynamic-binding

    1熱度

    1回答

    可能重複: Calling virtual functions inside constructors 用C ++,從A類派生的類B的一個目的,在C++ A的c'tor被援引B的c'tor,爲什麼? 如果A的C'tor調用虛函數會發生什麼?它是否調用A的B的虛函數?

    1熱度

    1回答

    爲什麼編譯器讓這個表達式編譯,而運行時異常是不可避免的? 我不認爲Dynamic Binding應該無效方法 static void Main(string[] args) { var res = Test((dynamic)"test"); // throws RuntimeBinderException exception at runtime } static void T

    1熱度

    1回答

    class A { static function get_name_derived_class() { //This function must return the name of the real class //Is it possible without insert a methon in B class? { } clas

    0熱度

    1回答

    我有一個組合框在數據網格EditItemTemplate裏,我寫在組合框中一些代碼加載事件,如: 代碼: private void cmbGFld_Loaded(object sender, RoutedEventArgs e) { ComboBox cmb = (ComboBox)sender; cmb.ItemsSource = FieldsList.G

    0熱度

    2回答

    嗨專家可以做這樣的動態綁定。 objshapes是稱爲Shape的父類,Rectangle是子類。我有幾個子類,這取決於用戶選擇的形狀,我需要將正確的形狀綁定到objShapes。所以我認爲我可以像這樣綁定。但我得到一個錯誤。 Shape *objShapes[3]; objshapes[size]= &new Rectangle(3,lvaule,5) //error: lvalue r

    9熱度

    3回答

    class A { public virtual void WhoAreYou() { Console.WriteLine("I am an A"); } } class B : A { public override void WhoAreYou() { Console.WriteLine("I am a B"); } } class C : B { publ

    0熱度

    1回答

    我實現一個功能結合,這將使我的動態添加列到JavaScript表: for(var i = 0; i < info.length; i++){ var temp = []; temp.push(parseInt(info[i].site_id)); temp.push(info[i].site); temp.push(info[i].site_c

    0熱度

    3回答

    我有下面的代碼的問題之間的關係(這是調用動態綁定?)。我對3點感到困惑。 一,什麼是變量PQ的是什麼意思? pd仍然是P的數據類型還是Q? 其次,當我調用pq.m(PP)方法,爲什麼結果成爲Q :: P而不是P :: Q& 最後,這是什麼平均值((P)QQ).M(QQ);?我希望有人能解決我的問題。 下面的代碼的結果將是 P :: Q,Q :: P,Q :: Q,R :: P,Q :: P,Q :

    0熱度

    3回答

    我有一個實現兩個接口的抽象類。我是否正確思考因爲我使用兩個接口,我不能使用任一接口來實現動態綁定?原因是如果我使用其中一個接口,我顯然無法從其他接口調用方法,因爲類型系統只允許子類型調用由我用來聲明多態變量的接口定義的方法。 因此,我的實際問題是,OK,我才真正使用的接口,以確保我的抽象類(或子類)絕對提供了方法的實現?這似乎與第19條所述的內容相矛盾 - 你應該只使用接口類型(我把它看成是多態)

    0熱度

    6回答

    上結合我在虛擬功能的問題: 下面是一些代碼作爲一個例子: class A { public : virtual void print(void) { cout<< "A::print()"<<endl; } }; class B : public A { public : virtual void