invalid use of 'this' in non-member func

Alles rund um die Programmierung mit Qt
Antworten
sea_bear
Beiträge: 61
Registriert: 9. Oktober 2005 16:40
Wohnort: Schortens

invalid use of 'this' in non-member func

Beitrag von sea_bear »

Moin moin!
Ich versuche im Hauptprogramm

Code: Alles auswählen

int main(int argc, char *argv[])
{
 QApplication app(argc, argv);
...
eine MessageBox anzeigen zu lassen.
Der Code sieht ungefähr so aus:

Code: Alles auswählen

...
QMessageBox::warning(this, ...
...
Leider bekomme ich immer die Fehlermeldung: invalid use of ‘this’ in non-member function

Was mache ich falsch, bzw. wie mache ich es richtig??

mfg
Tobias
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Die Meldung sagt doch schon alles:
int main() ist keine Member-Funktion einer Klasse ;)
Daher kann this auch auf kein Objekt zeigen.
Nimm einfach mal 0. Vllt gehts dann ;)

Grüße
Franz
sea_bear
Beiträge: 61
Registriert: 9. Oktober 2005 16:40
Wohnort: Schortens

Beitrag von sea_bear »

franzf hat geschrieben: Nimm einfach mal 0. Vllt gehts dann ;)

Grüße
Franz
wie sieht das als Code aus??


Tobias
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

sea_bear
Beiträge: 61
Registriert: 9. Oktober 2005 16:40
Wohnort: Schortens

Beitrag von sea_bear »

upsala hat geschrieben:
Danke!!!! :-)

Jetzt muss mir nur noch jemand erklären, warum ich mal und mal nehmen kann / muss!!

Tobias
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Du mußt gar nichts, du kannst jetzt immer statt this 0 verwenden. Das Ergebnis siehst du meist recht schnell. Ansonsten könntest du noch die Dokumentation zu QObject bzw. QWidget lesen. Dort ist der Parameter parent erklärt...
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

sea_bear hat geschrieben: Jetzt muss mir nur noch jemand erklären, warum ich mal und mal nehmen kann / muss!!
Ich würde sagen Du beschäftigst Dich mal mit einem C++ - Buch. Das hier ist ein Forum für Qt und nicht für C++-Anfänger. Sorry.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Christian81 hat geschrieben:Ich würde sagen Du beschäftigst Dich mal mit einem C++ - Buch. Das hier ist ein Forum für Qt und nicht für C++-Anfänger. Sorry.
Ich kann nur sagen:

Code: Alles auswählen

using namespace std;
:D
Auch wenn es nicht korrektes C++ ist sondern nur im übertragenen Sinne passt ;)
webmaster1987
Beiträge: 73
Registriert: 2. September 2006 18:30
Wohnort: Köln
Kontaktdaten:

Beitrag von webmaster1987 »

Also der Pointer this zeigt ja nur auf die Speicheradresse der aktuellen Klasse hat also relativ wenig mit 0 zu tun^^.

Das einzige was mit 0 gleichzusetzen ist ist NULL. NULL ist die Adresse des Ersten Speicherbereiches des Arbeitsspeichers, den wiederum kann man nicht überschreiben und deshalb ist NULL und 0 als Speicheradresse das gleiche.
DOUBLE ist wie FLOAT nur in HD
Antworten