2012-06-24 29 views
-1

我已經使用抽象基類來實現接口和派生類。看到下面的代碼..它可以與任何標準的設計模式在C + +?我使用抽象類作爲接口。它可以關聯到哪種設計模式?

Class people 
{ 
    public: 
     virtual void setname(string name)=0; 
     virtual void SetAge(int Age)=0; 
     //etc consists of only pure virtual functions like above 
}; 

Class Students: public people 
{ 
    void setname(string name) 
    { 
     //implementation of the function 
    } 
    void SetAge(int Age) { //implementation } 
} 

並且如上文和對象在Buildclass的構造,在創建我已經定義了許多類:

Buildclass::Buildclass() 
{ 
    people *Obj = (people*) new Students(); 
    interface *obj1 = (interface*) new implementation(); 
} 

,我不得不爲上面在另一個層中使用提供的getInstance功能

void BuildClass::getPeopleinstance() 
{ 
    return Obj; 
} 
void BuildClass::getAnotherinstance() 
{ 
    return Obj1; 
} 

上面的代碼可以關聯到任何設計模式嗎?請告訴我?我無法找到答案。

+2

沒有,它甚至不是一個有效的C++。 – 2012-06-24 04:24:51

+1

瞭解第一個編程,數據結構和算法。當你知道基礎知識時,OOP應該會來。這些類應該圍繞算法和數據進行設計,而不是相反。 – Nawaz

+0

上面的代碼有什麼錯誤?請告訴我。 – Rajesh

回答

4

您似乎使用工廠模式,但它確實沒有關係。專注於編寫好的代碼,而不是設計模式。

相關問題