Evgenios1 Δημοσ. 28 Ιανουαρίου 2009 Δημοσ. 28 Ιανουαρίου 2009 Διλαδι το interface στη cpp ειναι μια base class (abstrac class) ... μαλιστα... δε με λες , πως διλονετε? ως class ή interface και τελος, οταν λεμε API το I ειναι interface αλα cpp ? για αυτο , σκαλονα σηνεχια στα apis.. κατι μαθαμε και σημερα Ααα... και καατι τελευτεο. Πως διλονω μια κλαση στη cpp ?(οχι static functions) Στη C# το κανεις με το new (classA a=new classA{}, προσπαθησα να το κανω ετσι και στη cpp αλα δεν...
georgemarios Δημοσ. 29 Ιανουαρίου 2009 Δημοσ. 29 Ιανουαρίου 2009 παραδειγμα κλασεων (παρμενο απο εδω ) > // pointer to classes example #include <iostream> using namespace std; class CRectangle { int width, height; public: void set_values (int, int); int area (void) {return (width * height);} }; void CRectangle::set_values (int a, int { width = a; height = b; } int main () { CRectangle a, *b, *c; CRectangle * d = new CRectangle[2]; b= new CRectangle; c= &a; a.set_values (1,2); b->set_values (3,4); d->set_values (5,6); d[1].set_values (7,8); cout << "a area: " << a.area() << endl; cout << "*b area: " << b->area() << endl; cout << "*c area: " << c->area() << endl; cout << "d[0] area: " << d[0].area() << endl; cout << "d[1] area: " << d[1].area() << endl; delete[] d; delete b; return 0; } διορθωσα και πιο πανω το τι ειναι abstract class. Δε χρειαζεται να εχει μονο pure virtual functions, αρκει να εχει μονο μια και οι υπολοιπες μπορει να ειναι κανονικες. παραδειγμα abstract class
georgemarios Δημοσ. 29 Ιανουαρίου 2009 Δημοσ. 29 Ιανουαρίου 2009 παραδειγμα κλασεων (παρμενο απο εδω ) > // pointer to classes example #include <iostream> using namespace std; class CRectangle { int width, height; public: void set_values (int, int); int area (void) {return (width * height);} }; void CRectangle::set_values (int a, int { width = a; height = b; } int main () { CRectangle a, *b, *c; CRectangle * d = new CRectangle[2]; b= new CRectangle; c= &a; a.set_values (1,2); b->set_values (3,4); d->set_values (5,6); d[1].set_values (7,8); cout << "a area: " << a.area() << endl; cout << "*b area: " << b->area() << endl; cout << "*c area: " << c->area() << endl; cout << "d[0] area: " << d[0].area() << endl; cout << "d[1] area: " << d[1].area() << endl; delete[] d; delete b; return 0; } διορθωσα και πιο πανω το τι ειναι abstract class. Δε χρειαζεται να εχει μονο pure virtual functions, αρκει να εχει μονο μια και οι υπολοιπες μπορει να ειναι κανονικες. παραδειγμα abstract class
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.