auf Member-Variablen zugreifen
-
tagchen,
könnt ihr mir sagen, wie ich auf eine Member-Variable aus einer anderen Klasse zugreifen kann?
-
Zeiger auf andere Klasse besorgen.
AndereKlasse * pA;
pA->m_Variable ...;[ Dieser Beitrag wurde am 15.06.2002 um 13:11 Uhr von Erhard Henkes editiert. ]
-
Ein gutes Beispiel ist die Doc/View-Architektur in MFC: http://mitglied.lycos.de/ehenkes/mfc_einsteigerbuch_kapitel7.htm
Dort findet man z.B. in der View-Klasse folgenden Zugriff auf die Doc-Klasse:
void CTest_View::OnDraw(CDC* pDC) { CTest_Doc* pDoc = GetDocument(); //... //Erstes Quadrat zeichnen: pDC->MoveTo(pDoc->ErstesQuadrat); pDC->LineTo(pDoc->ErstesQuadrat.x + pDoc->Laenge, pDoc->ErstesQuadrat.y); pDC->LineTo(pDoc->ErstesQuadrat.x + pDoc->Laenge, pDoc->ErstesQuadrat.y + pDoc->Laenge); pDC->LineTo(pDoc->ErstesQuadrat.x, pDoc->ErstesQuadrat.y + pDoc->Laenge); pDC->LineTo(pDoc->ErstesQuadrat.x, pDoc->ErstesQuadrat.y);
-
Hmmm. Ich hab das noch nicht ganz verstanden.
Wie kann ich denn z.B einen String aus der Variable der einen Klasse in die Variable einer anderen Klasse kopieren?
[ Dieser Beitrag wurde am 15.06.2002 um 15:21 Uhr von theykilledkenny editiert. ]
-
Indem du den this-zeiger der Klasse übergibst auf die du von einer anderen klasse zugreifen möchtest.
Schau dir dazu mein Bsp. von meiner HP an. Dort wird es mit einer Threadklasse gemacht. Erklärung dazu befindet sich in der FAQ.
-
geht das auch aus einem im CDoc aufgerufenem Dialogfeld (modaler dialog)?
-
Mit der MFC-Klasse CString ist das Kopieren einfach:
CString m_str_aus_Klasse1 = "Hallo";
CString m_str_aus_Klasse2 = "Guten Tag";Klasse2 * pKlasse2;
m_str_aus_Klasse1 = pKlasse2->m_str_aus_Klasse2;
Wo ist hier das Problem?
-
Wenn man es kann ist es easy. THX.
-
Wie kann man den eine Funktion von einer anderen Klasse aufrufen ?