Was bedeutet "unvollständiger Typ" bei QT/C++?

4 Antworten

Beispiel:

class C_Test;

int function(int a) {
    int b;
    C_Test c; // < produziert Deinen Fehler: die Klasse C_Test
        // ist deklariert, aber  nicht definiert. Daher weiß der
        // Compiler zBsp. nicht, wie viel Speicher belegt werden soll.
}

Ein "unvollständiger Typ" ist ein vom Namen bekannter Typ, der also schon als Platzhalter zur Deferenzierung von Pointern verwendet werden kann, aber dann im Einsatz (also dem Zugriff auf den Speicher selbst) noch nichts taugt, da eben seine Beschreibung fehlt.

In QT wird vieles oft nur per Speicheradresse übergeben, daher sind die Typnamen schon bekannt und zeigen schön, worauf der Speicher verweisen könnte, um dann aber auf jenen zuzugreifen (von Nutzerseite) muss der entsprechende Header eingefügt werden.

Das bedeutet, dass irgendein Variablentyp nicht vollständig bekannt ist. Häufig hat man irgendwas vergessen einzubinden.

Poste mal deinen Code für mehr Infos

Installier mal QuickTime und Microsoft Restribut