Nun sagte mir mein Lehrer als ich ihm dies zeigte das die Konstruktor und Destruktor blabla fehlen. Nun habe ich ziemliche Verständnisprobleme bei welcher Verknüpfung (Komposition / Assoziation / Aggregation) in dem Klassendiagramm inklusive dem Quellcode.

This post has been edited 1 times, last edit by "l2oxxi" (Nov 8th 2010, 7:55pm)
This post has been edited 2 times, last edit by "l2oxxi" (Nov 8th 2010, 11:34pm)
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 |
int main() { cbank objbank("Sparkasse"); cout << objbank.getbankname() << endl; ckunde* objkunde = objbank.getobjkunde(); // <- hier sollte etwas nicht passen? objkunde->setkundenname("Adrian"); cout << objkunde->getkundenname(); getch(); } // hier kein Semikoln! |
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
#include <cstdlib> #include <iostream> #include <string> #include <conio.h> using namespace std; class ckunde; class cbank { private: string m_strbankname; ckunde* m_pobjkunde; public: cbank(string strbankname); ~cbank(); ckunde* getobjkunde(); string getbankname(); void setbankname(string strbankname); }; class ckunde { private: string m_strkundenname; public: ckunde(string strkundenname); ~ckunde(); void setkundenname(string strkundenname); string getkundenname(); }; cbank::cbank(string strbankname) { m_strbankname = strbankname; m_pobjkunde = new ckunde(""); } cbank::~cbank() { delete m_pobjkunde; } string cbank::getbankname() { return m_strbankname; } ckunde::ckunde(string strkundenname) { m_strkundenname = strkundenname; } ckunde::~ckunde(){} string ckunde::getkundenname() { return m_strkundenname; } int main() { cbank objbank("Sparkasse"); cout << objbank.getbankname() << endl; ckunde* objkunde = objbank.getobjkunde(); objkunde->setkundenname("Adrian"); cout << objkunde->getkundenname(); getch(); }; |

|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
#include <cstdlib> #include <iostream> #include <string> #include <conio.h> using namespace std; class ckonto; class ckunde; class cbank { private: string m_strbankname; ckunde* m_pobjkunde; ckonto* m_pobjkonto; public: cbank(string strbankname); ~cbank(); ckunde* getobjkunde(); string getbankname(); void setbankname(string strbankname); }; class ckunde { private: string m_strkundenname; ckonto * m_pobjkonto; public: ckunde(string strkundenname); ckonto* getobjkonto(); ~ckunde(); void setkundenname(string strkundenname); string getkundenname(); }; class ckonto { private: string m_strkontonummer; public: ckonto(string strkontonummer); ~ckonto(); string getkontonummer(); void setkontonummer(string strbankname); }; cbank::cbank(string strbankname) { m_strbankname = strbankname; m_pobjkunde = new ckunde(""); } cbank::~cbank() { delete m_pobjkunde; delete m_pobjkonto; } string cbank::getbankname() { return m_strbankname; } ckunde::ckunde(string strkundenname) { m_strkundenname = strkundenname; m_pobjkonto = new ckonto(""); } ckunde::~ckunde() { delete m_pobjkonto; } string ckunde::getkundenname() { return m_strkundenname; } void ckunde::setkundenname(string strkundenname) { m_strkundenname = strkundenname; } ckunde* cbank::getobjkunde() { return m_pobjkunde; } ckonto::ckonto(string strkontonummer) { m_strkontonummer = strkontonummer; } ckonto::~ckonto(){} void ckonto::setkontonummer(string strkontonummer) { m_strkontonummer = strkontonummer; } string ckonto::getkontonummer() { return m_strkontonummer; } ckonto* ckunde::getobjkonto() { return m_pobjkonto; } int main() { cbank objbank("Sparkasse"); cout << objbank.getbankname() << endl; ckunde* objkunde = objbank.getobjkunde(); objkunde->setkundenname("Adrian"); cout << objkunde->getkundenname() << endl; ckonto* objkonto = objkunde->getobjkonto(); objkonto->setkontonummer("76"); cout << objkonto->getkontonummer() << endl; getch(); } |
This post has been edited 2 times, last edit by "l2oxxi" (Nov 9th 2010, 2:42pm)
|
|
C/C++ Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
class ckunde; class cbank { private: string m_strbankname; vector< ckunde*> m_veckunde; public: cbank(string strbankname); ~cbank(); ckunde* getobjkunde(); string getbankname(); void setbankname(string strbankname); }; class ckunde { private: string m_strkundenname; public: ckunde(string strkundenname); ckonto* getobjkonto(); ~ckunde(); void setkundenname(string strkundenname); string getkundenname(); }; cbank::cbank(string strbankname) { m_strbankname = strbankname; ckunde* objkunde = new ckunde(""); } cbank::~cbank() { ????? Kompletten Vektor löschen???????? } ckunde* cbank::getobjkunde() { cbank.m_veckunde.push_back(ckunde); << Funktioniert nicht } |