Auf Objekte zugreifen ..

Du bist neu in der Welt von C++? Dann schau hier herein!
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Barcardi hat geschrieben:Achso so hab ich es verstanden:
Und in meinSlot() machst du dann sowas wie ui->deinLabel->setText("Ein Signal hat mich verändert...");
IN bedeutet "in der Implementierung"!
Du hast üblicherweise eine Klassendefinition (in deinem Header). In dieser werden dann (u.A.) die Memberfunktionen deklariert. Die Methodendefinition geschieht üblicherweise in der dazugehörigen .cpp. Fehlt diese Definition (==Implementierung), kann der Linker die nicht finden und meldet "undefined reference to". Prinzipiell ist es möglich Funktionen undefiniert zu lassen, solange sie nicht verwendet werden. Einzige Ausnahme: virtuelle Funktionen - diese brauchen sobald sie deklariert wurden auch eine Definition (Ausnahme: pure virtual Funktionen, die brauchen aber in allen abgeleiteten Klassen eine Implementierung).
Warum ist die GUI Programmierung so kompliziert/schwer???? Console ftw!
Du hast eigentlich noch gar nicht wirklich mit GUI-Programmierung angefangen. Das ist noch nichtmal wirklich fortgeschrittenes C++. Du hattest bisher noch keine Events oder Painter in der Hand, hast noch keine der Model/View-Klassen von Qt verwendet, geschwige denn versucht, Berechnungen in einen eigenen Thread auszulagern um die Daten dann in die GUI zu bucksieren. Deine Einstiegsprobleme beruhen auf dem fehlenden C++-Grundlagenwissen :( Ist leider so, deshalb hab ich dir in den letzten Posts immer fleißig die Links untergejubelt :P
Barcardi
Beiträge: 32
Registriert: 14. Mai 2010 03:00
Wohnort: München

Beitrag von Barcardi »

Hab ich mir dann das eine Buch umsonst zugelegt? Die du mir geschickt hast sind nicht mehr zu kaufen.. Und im ebook wie gesagt fehlt immer eine Seite..
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

So sollte das dann aussehen

Code: Alles auswählen

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QDebug>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    if (!connect(ui->pushButton, SIGNAL(clicked()),this, SLOT(meinSlot())))
        qDebug()<<"Dein connect hat nicht geklappt!";


}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::meinSlot()
{
    ui->label->setText("Der slot hat mich verändert....");
}



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

Beitrag von franzf »

http://www.addison-wesley.de/main/main. ... tid=166770
http://www.addison-wesley.de/main/main. ... tid=170208
http://www.amazon.de/Die-Programmierspr ... 655&sr=8-1
http://www.amazon.de/Einf%C3%BChrung-di ... 307&sr=8-3
Wobei speziell die "Einführung in die C++ Programmiersprache" von Stroustrup als recht verständlich und Anfängertauglich beschrieben wurde - vllt ein (zugegebenermaßen teurer) Ersatz für die Print-Ausgabe des C++-Primer?

Wie bist du denn mit den ersten Seiten des C++ Primer bei google books zurechtgekommen?
Herzogswalder
Beiträge: 79
Registriert: 11. Oktober 2009 00:37
Wohnort: Dresden

Beitrag von Herzogswalder »

Also wenn du die GUI-Programmierung mit Qt schon schwer findest,
dann mach das mal mit der MFC. :lol:
Gruß, Herzogswalder
Qt 4.8, OS X Mountain Lion
Barcardi
Beiträge: 32
Registriert: 14. Mai 2010 03:00
Wohnort: München

Beitrag von Barcardi »

franzf hat geschrieben:Wie bist du denn mit den ersten Seiten des C++ Primer bei google books zurechtgekommen?
Bin direkt zum Kapitel der Klassen gesprungen, sieht vielversprechend aus! Doch fehlen ja die Seiten, dafür konnt ich es mir nicht genauer anschauen.. Aber wenn ihr meint das man dort die Grundlagen gescheit lernt bzw. alle Grundlagen, kauf ich es mir natürlich.
Less ich mir halt alles neu durch vllt hatt was im anderen Buch gefehlt (Hinweise, Anmerkungen oder so).
Also C++-Primär ist Super?

@AuE Vielen Dank für deine Hilfe ich werd damit mal rumexperementieren, natürlich auch Vielen vielen Dank an Franz.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Bin direkt zum Kapitel der Klassen gesprungen, sieht vielversprechend aus! Doch fehlen ja die Seiten, dafür konnt ich es mir nicht genauer anschauen..
Ich habe eigentlich auch gedacht, dass du dir das davor mal anschaust, ist ja bis zu den Klassen recht komplett. Da ist sicher auch vieles dabei was du noch noch nicht kennst.

Ich hab mir jetzt zu dem "Spielend C++ lernen" die Leseprobe angeschaut. Ist sicher ganz nett. Das Buch spricht das bildhafte Vorstellungsvermögen eines Kindes an. Bei Kindern ist das Abstrakte Vorstellungsvermögen nocht nicht so stark ausgeprägt. Ich denke das war für dich mit 16 etwas zu unterfordernd.
Im Prinzip kannst du leider nach der Lektüre gar nix :/

Mit 30¤ ist der C++ Primer sicher preiswert, bei dem was man heute für Fachliteratur zahlt...
Wolltest du java lernen, würde ich sagen "Java ist auch eine Insel" gibt es als kostenloses openbook :D

Was mir gerade noch einfällt, sind die "Thinking in C++"-Bücher. Sind kostenlos verfügbar - aber eben wieder auf Englisch.
Als besseres Tutorial wird auch gerne das hier empfohlen
http://tutorial.schornboeck.net/inhalt.htm

Ich weiß leider nicht wie viel Geld du als 16jähriger für Lektüre aufwenden kannst/willst. Aber das Geld wert ist der C++ Primer allemal. Das Buch mit dem ich angefangen habe hat wohl auf Dauer mehr Lücken geschaffen, die Stück für Stück erst haben geflickt werden müssen - viele sind wohl immer noch offen...
Barcardi
Beiträge: 32
Registriert: 14. Mai 2010 03:00
Wohnort: München

Beitrag von Barcardi »

Naja bevor ich mir den Online Tutorial anschaue kaufe ich mir lieber das Buch und less es mir komplett durch.. Sonst wiederhole ich Sachen vom Tutorial wieder im Buch und sachen 10 mal zu lesen, nein Danke.
Antworten