Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » auf globale Variable aus Klasse a von Klasse b zugreifen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
08.06.2004, 15:46 Uhr
~verwirrt
Gast


Hallo!

Ich hab in der Klasse a eine globale Variable erstellt. Wie greife ich jetzt von Klasse b auf diese Variable zu?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.06.2004, 16:19 Uhr
KaraHead



Wie hast du in Klasse a eine globale Variable erstellt. Globale Variablen liegen ausserhalb aller Klassen. Du meinst bestimmt statische Variable?

Ist B von A abgeleitet oder friend. Ist die Variable private, public????

Am besten ein bischen code posten.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
08.06.2004, 16:57 Uhr
mike
Pinguinhüpfer
(Operator)


Also ich denke dass dies kein MFC ist

--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.06.2004, 08:28 Uhr
~verwirrt
Gast


Ok, *g* augenscheinlich war ich gestern noch verwirrter als ich dachte.

Ich hab im Header stehen:


C++:
class CStatistic
{
    int m_FrameCounter;
    int m_FrameStruct;
    RTStat *m_pRTStat;


};



Die Klasse benötige ich zum Auswerten von Daten und diese werden in die Struktur RTStat geschrieben. Da ich die Daten grapisch darstellen will, muss ich aus der Klasse CScrollWindow, das Fenster, in dem die Daten dargestellt werden, auf die Daten in dieser Struktur zugreifen. Und da sitz ich jetzt auf dem Schlauch, wie ich das programmtechnisch hinkriege.


Bearbeitung von ao:
Layout repariert


Gruß

Dieser Post wurde am 09.06.2004 um 08:32 Uhr von ao editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.06.2004, 09:05 Uhr
ao

(Operator)


Membervariablen von Klassen sind, wenn nichts anderes angegeben ist, privat, d.h. von außen nicht sichtbar.

Die schnelle, aber unschöne Lösung ist, die Member public zu machen, dann ist die Klasse genauso ungeschützt wie ein struct.

Die schöne Lösung ist, Schnittstellenfunktionen zu schreiben. Das hat nicht nur die allgemeinen Vorteile der Kapselung, sondern du kannst die ganze statistische Auswertung hier einbauen. Dadurch müssen die Klassen, die drumherum sind und CStatistic füttern bzw. auslesen, sich nicht drum kümmern, *wie* die Statistik gemacht wird, sondern sie liefern nur die Daten dafür bzw. holen die Ergebnisse ab.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.06.2004, 13:54 Uhr
~verwirrt
Gast


Hmpf, wie schreibe ich denn so eine Schnittstellenfunktion?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
14.06.2004, 16:11 Uhr
ao

(Operator)



C++:
class CStatistic
{
private:
    int m_FrameCounter;
    int m_FrameStruct;
    RTStat *m_pRTStat;

public:
    /* wer Input für CStatistics hat, kann den hier abliefern */
    int FeedStatistics ( /* irgendwelche Eingabedaten */ );

    /* wer Ergebnisse will, kann sie hier holen */
    int GetStatisticsResults ( /* ... */ );
};



Wenn du jetzt nur noch Bahnhof verstehst, solltest du dir erst mal ein paar Grundlagen anlesen, z.B. hier: www.fun-soft.de/Download/ebooks/c++in21tagen/inhalt.html

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: