error C2248: 'CObject::CObject'

DerSiebte

Mitglied
Hallo Zusammen

ich bekomme diesen fehler wennich mein programm ausführe

error C2248: 'CObject::CObject' : cannot access private member declared in class 'CObject'

wenn ich draufklicke zeigt er mir den fehler in einem standart header von vs: afxwin.h

ich habe eine methode erstellt die meiner Meinung nach diesen fehler erzeugt:

Code:
  CListBox LTeam(CListBox&);

was braucht ihr noch für informationen um mir zu helfen

Grüsse

DerSiebte
 

vfl_freak

Premium-User
Moin,

die VS-Hilfe für diesen Fehler (die fehlernummer in der Konsole markieren und <F1> drücken!!) sagt doch alles:
'Element' : Zugriff auf 'private/protected'-'Element' (in Klasse 'Klasse' deklariert) nicht möglich
Es wurde versucht, auf das angegebene private- oder protected-Element einer Klasse, Struktur oder Union zuzugreifen.
Tips
Dieser Fehler kann auftreten, wenn versucht wird, auf ein Element zuzugreifen, das mit private oder protected deklariert wurde, oder auf ein public-Element einer Basisklasse, von der mit private oder protected definierte Elemente vererbt wurden. Auf das Element sollte mit einer Member-Funktion mit public-Zugriff zugegriffen werden, oder es sollte mit public-Zugriff deklariert werden. Ein Beispiel für diesen Fehler:
Code:
class X
{
public:
   int  m_pubMemb;
   void setPrivMemb( int i ) { m_privMemb = i; }
protected:
   int  m_protMemb;
private:
   int  m_privMemb;
} x;

class Y : X {} y;    // Zugriff auf X ist per Standardeinstellung private

void main()
{
   x.m_pubMemb;      // Korrekt, m_pubMemb ist public
   x.setPrivMemb( 0 ); // Korrekt, verwendet public-Zugriffsfunktion
   x.m_protMemb;     // Fehler, m_protMemb ist protected
   x.m_privMemb;     // Fehler, m_privMemb ist private
   y.m_pubMemb;      // Fehler, Y erbt X als private
   y.setPrivMemb( 0 ); // Fehler, Y erbt X als private
}
Gruß
Klaus