<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Zeigerproblem (kein Compilerfehler) in QtÜbung [close]]]></title><description><![CDATA[<p>Hallo All,</p>
<p>ich hoffe ich bin hier richtig, aber meiner Meinung nach hat mein Fehler nichts mit Qt zu tun... Falls doch bitte ich um Entschuldigung und Verschiebung...</p>
<p>Zu meinem Problem, ich habe eine kleine Qt Anwendung aus bis jetzt 3 Fenstern gemacht, die ich alle über ein Signal/Slot Konzept öffne und schließe.<br />
Folglich habe ich den Slot zusammen mit einem Zeiger auf die andere Klasse in der Klasse deklariert. Im Konstruktor initialisiere ich dann den Zeiger und dort ist auch mein Problem... Sobald ich namlich den Zeiger nicht mehr ausklammere (siehe unten) bekomme ich kein Fenster mehr, obwohl das Programm im Hintergrund laut Debugger läuft, oder habe ich da was falsch gemacht? Aber normalerweise kommt doch bei Fehlern ein PopUp... Ich habe keinen Schimmer woran das liegt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<pre><code>registration.h
[cpp]class Registration : public QDialog
{
          ...
    class Check *ptr;
    class Startfenster *ptr1;
};[/cpp]

registration.cpp
[cpp]Registration::Registration(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Registration)
{
           ...
    ptr = new Check(); //aber warum funktioniert es hier?
    ptr1 = new Startfenster(); //hier ist der Fehler, denn beim Ausklammern funktioniert es
          ...
}[/cpp]

check.h
[cpp]class Check : public QDialog
{
        ...
    class Registration *ptr2;
};[/cpp]

check.cpp
[cpp]Check::Check(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Check)
{
      ...
    ptr2 = new Registration(); //hier ist der selbe Fehler nochmal, denn beim Ausklammern funktioniert es}[/cpp]
</code></pre>
<p>}<br />
Die Zeiger brauche ich für die Slots und das connecten zwischen den Ui´s... - ich kann sie also nicht weglassen...<br />
Desweiteren dachte ich dann, dass es ganz schlau wäre ich sie dann im Destruktor delete?</p>
<p>Bitte um Hilfe und es würde mich sehr freuen, wenn ihr mir auch andere Fehler mitteilen könnt, die euch auffallen, da ich nämlich keinen Ansprechpartner habe und alles aus Google und Büchern lerne. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Danke im Vorraus</p>
<p>PS: Das ist mein erster Beitrag, ich hoffe das passt so <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> - und nochmal sorry wegen falschem Forum</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/307267/zeigerproblem-kein-compilerfehler-in-qtübung-close</link><generator>RSS for Node</generator><lastBuildDate>Thu, 06 Aug 2026 20:49:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/307267.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 21 Aug 2012 17:08:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Fri, 31 Aug 2012 10:16:34 GMT]]></title><description><![CDATA[<p>Hallo All,</p>
<p>ich hoffe ich bin hier richtig, aber meiner Meinung nach hat mein Fehler nichts mit Qt zu tun... Falls doch bitte ich um Entschuldigung und Verschiebung...</p>
<p>Zu meinem Problem, ich habe eine kleine Qt Anwendung aus bis jetzt 3 Fenstern gemacht, die ich alle über ein Signal/Slot Konzept öffne und schließe.<br />
Folglich habe ich den Slot zusammen mit einem Zeiger auf die andere Klasse in der Klasse deklariert. Im Konstruktor initialisiere ich dann den Zeiger und dort ist auch mein Problem... Sobald ich namlich den Zeiger nicht mehr ausklammere (siehe unten) bekomme ich kein Fenster mehr, obwohl das Programm im Hintergrund laut Debugger läuft, oder habe ich da was falsch gemacht? Aber normalerweise kommt doch bei Fehlern ein PopUp... Ich habe keinen Schimmer woran das liegt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<pre><code>registration.h
[cpp]class Registration : public QDialog
{
          ...
    class Check *ptr;
    class Startfenster *ptr1;
};[/cpp]

registration.cpp
[cpp]Registration::Registration(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Registration)
{
           ...
    ptr = new Check(); //aber warum funktioniert es hier?
    ptr1 = new Startfenster(); //hier ist der Fehler, denn beim Ausklammern funktioniert es
          ...
}[/cpp]

check.h
[cpp]class Check : public QDialog
{
        ...
    class Registration *ptr2;
};[/cpp]

check.cpp
[cpp]Check::Check(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Check)
{
      ...
    ptr2 = new Registration(); //hier ist der selbe Fehler nochmal, denn beim Ausklammern funktioniert es}[/cpp]
</code></pre>
<p>}<br />
Die Zeiger brauche ich für die Slots und das connecten zwischen den Ui´s... - ich kann sie also nicht weglassen...<br />
Desweiteren dachte ich dann, dass es ganz schlau wäre ich sie dann im Destruktor delete?</p>
<p>Bitte um Hilfe und es würde mich sehr freuen, wenn ihr mir auch andere Fehler mitteilen könnt, die euch auffallen, da ich nämlich keinen Ansprechpartner habe und alles aus Google und Büchern lerne. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
Danke im Vorraus</p>
<p>PS: Das ist mein erster Beitrag, ich hoffe das passt so <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> - und nochmal sorry wegen falschem Forum</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244196</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244196</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Fri, 31 Aug 2012 10:16:34 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:12:32 GMT]]></title><description><![CDATA[<p>was heisst denn ausklammern?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244198</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:12:32 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:17:48 GMT]]></title><description><![CDATA[<p>als Kommentar verwenden, so suche ich meine Fehler meistens</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244200</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:17:48 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:21:23 GMT]]></title><description><![CDATA[<p>Der Fehler liegt wohl in einem der vielen &quot;...&quot;.<br />
Für ein connect brauchst du keine Zeiger als Member, und das connect könnte sogar völlig außerhalb der beteiligten Klassen stattfinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244202</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:21:23 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:24:28 GMT]]></title><description><![CDATA[<p>Ich sehe gerade, der Konstruktor von Check ruft den Konstruktor von Registration auf, der den Konstruktor von Check aufruft, der den Konstruktor von Registration aufruft ...</p>
<p>Kann das sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244204</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244204</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:24:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:29:37 GMT]]></title><description><![CDATA[<p>Die Konstruktoren der Klasse Registration und von Check rufen sich gegenseitig auf. Das ist zumindest eins deiner Problem.</p>
<pre><code class="language-cpp">Registration::Registration()
-&gt;
ptr = new Check();

.....

Check::Check()
-&gt;
    ptr2 = new Registration();
</code></pre>
<p>Die rufen sich dann immer wieder gegenseitig auf, bis alles zerberstet.<br />
Wird einer von beiden ausgeklammert, gehts natürlich.</p>
<p>Lösung:<br />
Verlager das &quot;new&quot;'n der beiden Objekte (&quot;new Registration()&quot; und &quot;new Check()&quot;) ganz woanders hin, un bau die Klassen so um, dass sie im Konstruktor gleich einen Zeiger zur jeweils anderen Instanz übergeben bekommen.<br />
brauchst code dafür?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244205</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244205</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:29:37 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:31:09 GMT]]></title><description><![CDATA[<p>und mach in den .h files aus den</p>
<p>class Registration *ptr;</p>
<p>mal ein</p>
<p>Registration *ptr;</p>
<p>das class lässt man in dem fall weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244206</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:31:09 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 17:40:28 GMT]]></title><description><![CDATA[<p>ok vielen Dank für deinen konstruktiven Beitrag, weil ich hab mir Mühe gegeben das möglichst gut zu kürzen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /><br />
das class mach ich gleich mal weg...<br />
Aber das Andere würde ich gerne erstmal selber ausprobieren, schließlich will ich ja was lernen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
und dann melde ich mich nochmal ob es jetzt geklappt hat</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244209</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244209</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Tue, 21 Aug 2012 17:40:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 19:22:28 GMT]]></title><description><![CDATA[<p>also ich war grad beim Essen und habe dabei über deinen Lösungsvorschlag nachgedacht, nur leider verstehe ich es noch nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>1. Sobald ich die class ´s in den &quot;h.&quot;´s wegmache kommt folge Fehlermeldung: ISO C++ forbids declaration of 'Registration' with no type; expected ';' before '*' toke</p>
<p>2. weiß ich nicht wohin ich das new umbauen soll, denn wir befinden uns ja im Konstruktor also bleibt nur main und Klasse selbst<br />
2.1 Klasse selbst, bekomm ich lauter Fehlermeldungen:<br />
..\ProjektPD Sicherung\/registration.h:32: error: 'new' cannot appear in a constant-expression<br />
..\ProjektPD Sicherung\/registration.h:32: error: ISO C++ forbids declaration of 'ptr' with no type<br />
..\ProjektPD Sicherung\/registration.h:32: error: ISO C++ forbids initialization of member 'ptr'<br />
..\ProjektPD Sicherung\/registration.h:32: error: making 'ptr' static<br />
..\ProjektPD Sicherung\/registration.h:32: error: ISO C++ forbids in-class initialization of non-const static member 'ptr'<br />
..\ProjektPD Sicherung\/registration.h:32: error: declaration of 'int Registration::ptr'<br />
..\ProjektPD Sicherung\/registration.h:29: error: conflicts with previous declaration 'Check* Registration::ptr'<br />
- da mach ich definitiv was ganz falsch</p>
<p>2.2 oder in die main und dann gehen alle connects (weil ich sie im Konstruktor habe) und slots nicht mehr, habe ich desweiteren schon vor einer Woche ohne Erfolg ausprobiert</p>
<p>3. Meinst du hiermit: &quot; un bau die Klassen so um, dass sie im Konstruktor gleich einen Zeiger zur jeweils anderen Instanz übergeben bekommen. &quot;, dass ich in einer Klasse eine Instanz auf die andere machen soll und darauf einen Zeiger?<br />
Falls ja macht man das initialisieren bei new ja dann mit dieser Klammer &quot;()&quot;, da QtKlassen aber für gewöhnlich einen default Zeiger auf 0 haben greif ich dann immer auf den zu und es funktioniert wieder nich</p>
<p>Wenn ich alles posten soll, dann sagt es aber ich wollte niemanden verschrecken und es wie in der Anleitung machen...</p>
<p>@manni66: Ich hab dich am Anfang leider falsch verstanden,nämlich dass ich nicht soviel ... machen soll und mein Posting gefälligst besser formulieren soll</p>
<p>Nun heute geht halt alles schief</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244228</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Tue, 21 Aug 2012 19:22:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 19:43:01 GMT]]></title><description><![CDATA[<p>Ich glaub, das praktischste ist, du lädst mal dein komplettes projekt hier hoch.<br />
ich weiss schon, was du nicht verstehst, aber ich glaub, per code is einfachste weg, das zu vermitteln.</p>
<p>zu 1: Such mal nach &quot;forward-declaration&quot; und versuch zu verstehen, was das ist.<br />
zu 2: &quot;Klasse selbst&quot; wäre schon der Konstruktor. der Konstruktor gehört zur Klasse.<br />
zu 3: puhhhh. grad echt keine ahnung, wo ich da anfangen soll. hab auch nicht super krass viel ahnung von qt.<br />
mein satz: &quot;bau die Klassen so um, dass sie im Konstruktor gleich einen Zeiger zur jeweils anderen Instanz übergeben bekommen.&quot; war streng genommen aber auch falsch, fällt mir grad auf.<br />
ich glaub, du brauchst einfach 2 neue methoden:</p>
<pre><code class="language-cpp">Registration::setCheckObject(Check *inCheck)
{
   this-&gt;ptr = inCheck;
}
...
Check::setRegistrationObject(Registration *inRegistration)
{
   this-&gt;ptr2 = inRegistration;
}
</code></pre>
<p>weisst du was ich meine?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244236</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Tue, 21 Aug 2012 19:43:01 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Tue, 21 Aug 2012 20:28:12 GMT]]></title><description><![CDATA[<p>also ich lade jetzt mal mein Projekt hoch, aber denken kann ich heut nimmer. Morgen werd ich dann deinen Post versuchen zu verstehen und Vorwärtsdeklaration googlen, schade nur das in meinem Programmierbuch (C++ Kompendium von Dirk Louis) nichts dazu drinsteht</p>
<pre><code>startfenster.h
[cpp]#ifndef STARTFENSTER_H
#define STARTFENSTER_H

#include &lt;QDialog&gt;
#include &quot;ui_startfenster.h&quot;
#include &quot;registration.h&quot;

class Startfenster : public QDialog
{
    Q_OBJECT

public:
    explicit Startfenster(QWidget *parent = 0);
    ~Startfenster();

private slots:
    void setUpR();

private:
    Ui::Startfenster *ui;
    class Registration *ptr;
};

#endif // STARTFENSTER_H[/cpp]
</code></pre>
<pre><code>registration.h
[cpp]#ifndef REGISTRATION_H
#define REGISTRATION_H

#include &lt;QDialog&gt;
#include &quot;ui_registration.h&quot;
#include &quot;check.h&quot;
#include &quot;startfenster.h&quot;

class Registration : public QDialog
{
    Q_OBJECT

    friend class Startfenster;
    friend class Check;

public:
    explicit Registration(class QWidget *parent = 0);
    ~Registration();

private slots:
    void setUpS();
    void setUpC();

private:
    Ui::Registration *ui;

    class Check *ptr;
    class Startfenster *ptr1;
};

#endif // REGISTRATION_H[/cpp]
</code></pre>
<pre><code>check.h
[cpp]#ifndef CHECK_H
#define CHECK_H

#include &lt;QDialog&gt;
#include &quot;ui_check.h&quot;
#include &quot;registration.h&quot;

class Check : public QDialog
{
    Q_OBJECT

    friend class Registration;

public:
    explicit Check(class QWidget *parent = 0);
    ~Check();

private: signals:
    void deliver();

private slots:
    void setUpR();

private:
    Ui::Check *ui;

    class Registration *ptr2;
};

#endif // CHECK_H
[/cpp]
</code></pre>
<pre><code>startfenster.cpp
[cpp]#include &quot;startfenster.h&quot;
#include &quot;ui_startfenster.h&quot;

Startfenster::Startfenster(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Startfenster)
{
    ui-&gt;setupUi(this);

    ptr = new Registration();

    connect(ui-&gt;Registration, SIGNAL(clicked()), this, SLOT(setUpR()));
    connect(ui-&gt;Nachname, SIGNAL(textEdited(QString)), ptr-&gt;ui-&gt;Nachname, SLOT(setText(QString)));
}

Startfenster::~Startfenster()
{
    delete ui;
    delete ptr;
}

void Startfenster::setUpR()
{
    ptr-&gt;show();
    ptr-&gt;raise();
    ptr-&gt;activateWindow();
}
[/cpp]
</code></pre>
<pre><code>registration.cpp
[cpp]#include &quot;registration.h&quot;
#include &quot;ui_registration.h&quot;

Registration::Registration(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Registration)
{
    ui-&gt;setupUi(this);

    ptr = new Check();
    //ptr1 = new Startfenster();

    connect(ui-&gt;Zurueck, SIGNAL(clicked()), this, SLOT(setUpS()));
    connect(ui-&gt;Weiter, SIGNAL(clicked()), this, SLOT(setUpC()));

    //Werte übergeben
    connect(ui-&gt;Vorname, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Vorname, SLOT(setText(QString)));
    connect(ui-&gt;Nachname, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Nachname, SLOT(setText(QString)));
    //connect(ui-&gt;dateEdit, SIGNAL(), ptr-&gt;ui-&gt;Geburtsdatum, SLOT(setText(QString))); //muss ich mir erst noch was überlegen
    connect(ui-&gt;Geburtsort, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Geburtsort, SLOT(setText(QString)));
    connect(ui-&gt;Geschlecht, SIGNAL(currentIndexChanged(QString)), ptr-&gt;ui-&gt;Geschlecht, SLOT(setText(QString)));
    connect(ui-&gt;Farben, SIGNAL(currentIndexChanged(QString)), ptr-&gt;ui-&gt;Farben, SLOT(setText(QString)));
    connect(ui-&gt;Groesse, SIGNAL(valueChanged(QString)), ptr-&gt;ui-&gt;Groesse, SLOT(setText(QString)));
    connect(ui-&gt;Gewicht, SIGNAL(valueChanged(QString)), ptr-&gt;ui-&gt;Gewicht, SLOT(setText(QString)));
    connect(ui-&gt;PLZ, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;PLZ, SLOT(setText(QString)));
    connect(ui-&gt;Adresse, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Adresse, SLOT(setText(QString)));
    connect(ui-&gt;Festnetz, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Festnetz, SLOT(setText(QString)));
    connect(ui-&gt;Handynr, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Handynr, SLOT(setText(QString)));
    connect(ui-&gt;Job, SIGNAL(textChanged(QString)), ptr-&gt;ui-&gt;Job, SLOT(setText(QString)));
    connect(ui-&gt;Beziehung, SIGNAL(currentIndexChanged(QString)), ptr-&gt;ui-&gt;Beziehung, SLOT(setText(QString)));
}

Registration::~Registration()
{
    delete ui;
    delete ptr;
    delete ptr1;
}

void Registration::setUpC()
{
    ptr-&gt;show();
    ptr-&gt;raise();
    ptr-&gt;activateWindow();
}

void Registration::setUpS()
{
    ptr1-&gt;show();
    ptr1-&gt;raise();
    ptr1-&gt;activateWindow();
}[/cpp]
</code></pre>
<pre><code>check.cpp
[cpp]#include &quot;check.h&quot;
#include &quot;ui_check.h&quot;

Check::Check(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Check)
{
    ui-&gt;setupUi(this);

    //ptr2 = new Registration();
}

Check::~Check()
{
    delete ui;
    delete ptr2;
}

void Check::setUpR()
{
    ptr2-&gt;show();
    ptr2-&gt;raise();
    ptr2-&gt;activateWindow();
}
[/cpp]
</code></pre>
<p>Was ich damit machen will <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Ich habe ein Startfenster mit 4 Buttons: Close, Bearbeiten, Einlesen, Registration<br />
Registration: registrieren -&gt; check überfrüfen -&gt; speichern<br />
Einlesen: Die gespeicherten Daten ausgeben, also wie Check<br />
Bearbeiten: Registrationfenster bereits ausgefüllt zum Bearbeiten -&gt; Check -&gt; speichern<br />
Close ist close<br />
und da man bei normalen Fenstern immer vor und zurück geht die &quot;Doppel&quot;-Zeiger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244242</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244242</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Tue, 21 Aug 2012 20:28:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 09:13:18 GMT]]></title><description><![CDATA[<p>nenn die dateien besser genau exakt so, wie die klassen heissen, also auch gross/klein-schreibung,etc. hier vlt ein denkanstoss:</p>
<pre><code>Startfenster.h
[cpp]
#ifndef STARTFENSTER_H
#define STARTFENSTER_H

#include &lt;QDialog&gt;

#include &quot;ui_startfenster.h&quot;
#include &quot;Registration.h&quot;

class Registration; // das is die forward declaration

class Startfenster : public QDialog
{
    Q_OBJECT

public:
    Startfenster(Registration *inRegistration, QWidget *parent = 0); // &lt;&lt;&lt; probier das ma umzusetzen. anstatt ptr=new Registration(); bei den anderen klassen entsrepchend.
    ~Startfenster();

private slots:
    void setUpR();

private:
    Ui::Startfenster *ui;
    Registration *ptr;

};

#endif // STARTFENSTER_H[/cpp]
</code></pre>
<p>am besten, du verlagerst diese ganzen new geschichten dahin, wo das erste fenster kreiert wird (in deinem fall wahrscheinlich wirklich die main.c*)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244343</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244343</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Wed, 22 Aug 2012 09:13:18 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 10:14:23 GMT]]></title><description><![CDATA[<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>nenn die dateien besser genau exakt so, wie die klassen heissen, also auch gross/klein-schreibung,etc. hier vlt ein denkanstoss:</p>
</blockquote>
<p>Das ist reine Konventionssache und sonst ziemlich irrelevant. Man sollte es nur einheitlich machen, damit keine Verwirrung entsteht. Ob die Dateien jetzt der Groß-/Kleinschreibung der Klassen folgen oder nicht, ob Header nun mit .h oder .hpp enden usw., ist von Projekt zu Projekt unterschiedlich. Für privaten Gebrauch sollte man sich angewöhnen, womit man selbst am Besten zurecht kommt - da gibts keine Vorgaben.</p>
<p>(Anders ist das mit der Rechtschreibung...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244369</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 22 Aug 2012 10:14:23 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 10:37:43 GMT]]></title><description><![CDATA[<p>also ich habe grad forward declarition gegoogelt und eine wirklich tolle Seite gefunden, wenn mal wer das selbe Problem hat: <a href="http://www.computerbase.de/forum/showthread.php?t=166913" rel="nofollow">http://www.computerbase.de/forum/showthread.php?t=166913</a> (Post 3)<br />
Allerdings hat sich mir da eine neue Frage aufgetan, denn laut dem Erklärer dauert Allokieren auf Heap deutlich länger als auf den Stack, ich aber dachte bis jetzt immer, dass wenn ich den Zeiger öfter brauche als einmal und ich so die Klasse immer wieder neu auf dem Stack allokieren muss aufgrund von endenden Namespaces es mit Zeigern dann schon schneller geht???</p>
<p>Zu meinem Problem die connects kann ich ohne weiteres verschieben, aber z.B. bei diesen Slot, ist irgendeiner:</p>
<pre><code>[cpp]void Check::setUpR()
{
    ptr2-&gt;show();
    ptr2-&gt;raise();
    ptr2-&gt;activateWindow();
}[/cpp]
</code></pre>
<p>Weie mach ich das dann mit den ptr´n ist ja aus der Klasse?<br />
mit extern irgendwie, obwohl ich nicht wüsste wie das gehen soll von Abhängigkeiten ganz zu schweigen<br />
Wenn ich einen ptr hier deklariere bekomme ich Speicherlecks on Maß...<br />
Auf den Stack kann ich in der Funktion auch nicht deklarieren habe ich gerade ausprobiert stürtzt das ganze Programm ab... - was glaube ich daran liegt, dass sobald die Funktion/Slot durch ist, der namespace gelöscht wird ich das Fenster aber noch brauche, genau wie bei delete...</p>
<p>Ich stehe in Rätseln <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Danke schon mal für die Hilfe bis jetzt!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244379</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Wed, 22 Aug 2012 10:37:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 10:58:57 GMT]]></title><description><![CDATA[<p>wit schrieb:</p>
<blockquote>
<p>...denn laut dem Erklärer dauert Allokieren auf Heap deutlich länger als auf den Stack, ich aber dachte bis jetzt immer, dass wenn ich den Zeiger öfter brauche als einmal und ich so die Klasse immer wieder neu auf dem Stack allokieren muss aufgrund von endenden Namespaces es mit Zeigern dann schon schneller geht???</p>
</blockquote>
<p>Häääh? Entweder ist deine Beschreibung einfach wirr oder schlicht unsinnig.</p>
<p>Grundsätzlich ist eine Variable auf dem Stack in der Regel vorzuziehen (und etwas schneller), aber es kommt auch immer darauf an was man erreichen will. Wenn ein Objekt über einen Scope (nicht Namespace, das ist etwas ganz anderes) hinweg überdauern muss, so eignet sich eine Stackvariable nicht. Allgemein würde ich sagen: verwende eine Stackvariable immer wenn es geht, und sonst Heapvariablen.</p>
<p>Nun lässt sich aus deiner Beschreibung aber nicht ablesen was du eigentlich sagen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244389</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 22 Aug 2012 10:58:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 11:21:09 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>nenn die dateien besser genau exakt so, wie die klassen heissen, also auch gross/klein-schreibung,etc. hier vlt ein denkanstoss:</p>
</blockquote>
<p>Das ist reine Konventionssache und sonst ziemlich irrelevant. Man sollte es nur einheitlich machen, damit keine Verwirrung entsteht. Ob die Dateien jetzt der Groß-/Kleinschreibung der Klassen folgen oder nicht, ob Header nun mit .h oder .hpp enden usw., ist von Projekt zu Projekt unterschiedlich. Für privaten Gebrauch sollte man sich angewöhnen, womit man selbst am Besten zurecht kommt - da gibts keine Vorgaben.</p>
<p>(Anders ist das mit der Rechtschreibung...)</p>
</blockquote>
<p>Joaaaa, allerdings sind doch folgende konventionen am weitverbreitesten, oder?<br />
* dateinamen exakt so benennen wie die enthaltenden klassen.<br />
* KlassenName.hpp, wenn sich um eine template-klasse handelt, ansonsten KlassenName.h</p>
<p>(hachja, ich hab den <a href="http://fotos.mtb-news.de/p/589349" rel="nofollow">hans</a> ja trotzdem lieb .oO)</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/29610">@wit</a>:<br />
hau mal alles was du jetzt in den konstruktoren hast in jeweils eine zusätzliche init() methode.<br />
dann kannst du die konstruktoren aufrufen, ohne das jemals irgentwas schief geht, dannach versuch ma, den konstruktor so umzubauen wie in meinen voherigen post.<br />
dann kannst du erst die objekte erzeugen mittels new(), dann ham sie auch alle jeweils ihre zeiger richtig gesetzt, und erst <strong>dannach</strong> rufst du jeweils die init()'s auf.<br />
weisst du, was ich meine?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244398</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Wed, 22 Aug 2012 11:21:09 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 11:26:31 GMT]]></title><description><![CDATA[<p>asc schrieb:</p>
<blockquote>
<p>wit schrieb:</p>
<blockquote>
<p>...denn laut dem Erklärer dauert Allokieren auf Heap deutlich länger als auf den Stack, ich aber dachte bis jetzt immer, dass wenn ich den Zeiger öfter brauche als einmal und ich so die Klasse immer wieder neu auf dem Stack allokieren muss aufgrund von endenden Namespaces es mit Zeigern dann schon schneller geht???</p>
</blockquote>
<p>Häääh? Entweder ist deine Beschreibung einfach wirr oder schlicht unsinnig.</p>
<p>Grundsätzlich ist eine Variable auf dem Stack in der Regel vorzuziehen (und etwas schneller), aber es kommt auch immer darauf an was man erreichen will. Wenn ein Objekt über einen Scope (nicht Namespace, das ist etwas ganz anderes) hinweg überdauern muss, so eignet sich eine Stackvariable nicht. Allgemein würde ich sagen: verwende eine Stackvariable immer wenn es geht, und sonst Heapvariablen.</p>
<p>Nun lässt sich aus deiner Beschreibung aber nicht ablesen was du eigentlich sagen willst.</p>
</blockquote>
<p>joa die sätze sind en bisel unsinnig, aber ich glaub, wit meint folgendes:<br />
er braucht in den klassen ja nicht ein komplettes objekt der anderen klassen, sondern halt jeweils nur einen zeiger. die schlussfolgerung, die objekte auf dem heap (oder auf dem stack, besser halt: überhaupt) zu kreieren, is allerdings falsch, die objekte brauchen jeweils nur zeiger, keine kompletten objekte, weder auf dem stack noch auf den heap.</p>
<p>zusätzlich zu der bedingung mit &quot;scope überdaeuern&quot; für heap speicher kommt btw noch der fall hinzu, dass man nicht genau weiss, wie groß die variable is, die man braucht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244399</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Wed, 22 Aug 2012 11:26:31 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 12:22:50 GMT]]></title><description><![CDATA[<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>Joaaaa, allerdings sind doch folgende konventionen am weitverbreitesten, oder?<br />
* dateinamen exakt so benennen wie die enthaltenden klassen.<br />
* KlassenName.hpp, wenn sich um eine template-klasse handelt, ansonsten KlassenName.h</p>
</blockquote>
<p>Wäre mir unbekannt, dass die allzu verbreitet sind, geschweige denn weitverbreitet. Dateinamen im CamelCase kenne ich eigentlich nur aus Java, die <em>.hpp/</em>.h-Mix-Regel ist mir ehrlich gesagt noch nie untergekommen. Hast du irgendeine Quelle für diese Konventionen, am Besten mit Statistiken, die zeigen, wie häufig sie vorkommen? Nach allem, was ich bisher in verschiedenen Projekten und Beispielen (online und in Büchern) sehen konnte, sind Konventionen einfach unterschiedlich, einige etwas öfter vertreten als andere, aber keine so prominent, dass man sie jetzt als <em>die</em> allgemeingültige Konvention verkaufen könnte.<br />
Ich wollte Hans eigentlich schön in seiner Ecke lassen, hab mich nur gewundert, dass jemand mit einem etwas &quot;schnoddrigen&quot; Schreibstil so penibel bei so unwichtigen Dingen wie der Schreibweise von Sourcedateinamen ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244421</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244421</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 22 Aug 2012 12:22:50 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 12:37:26 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>Joaaaa, allerdings sind doch folgende konventionen am weitverbreitesten, oder?<br />
* dateinamen exakt so benennen wie die enthaltenden klassen.<br />
* KlassenName.hpp, wenn sich um eine template-klasse handelt, ansonsten KlassenName.h</p>
</blockquote>
<p>Wäre mir unbekannt, dass die allzu verbreitet sind, geschweige denn weitverbreitet.</p>
</blockquote>
<p>Also die erste Regel kenne ich definitiv auch so, und wurde in der Regel so auch an allen Firmen, bei denen ich tätig war gehandhabt (Alles Firmen die hauptsächlich im MS-Umfeld tätig waren, die Hälfte davon rein auf C++ Basis). Auch in einigen Büchern wurde diese Notation verwendet (aber nicht explizit erwähnt). Ich würde sie zumindest zu einer nicht ganz unüblichen Regel zählen, aber ob sie sehr häufig ist steht auch auf einem anderen Blatt..</p>
<p>Die zweite Regel ist mir wiederum noch nie über den Weg gelaufen (Weder in Büchern noch irgendwo sonst).</p>
<p>Im wesentlichen ist es aber völlig egal wie eine Benennung erfolgt, und welche Regeln man sich selbst gibt, sofern sie konsistent sind. Wie hat auch schon Herb Sutter und Andrei Alexandrescru so passend geschrieben:</p>
<p>Buch: C++ Coding Standards schrieb:</p>
<blockquote>
<p>0. Don't sweat the small stuff. (Or: Know what not to standarize)<br />
...<br />
Don't overlegislate naming, but do use a consistent naming convention:<br />
...</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2244426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244426</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 22 Aug 2012 12:37:26 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 12:47:35 GMT]]></title><description><![CDATA[<blockquote>
<p>Ich wollte Hans eigentlich schön in seiner Ecke lassen, hab mich nur gewundert, dass jemand mit einem etwas &quot;schnoddrigen&quot; Schreibstil so penibel bei so unwichtigen Dingen wie der Schreibweise von Sourcedateinamen ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>haha, gut gekontert ;).</p>
<p>pumuckl schrieb:</p>
<blockquote>
<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>Joaaaa, allerdings sind doch folgende konventionen am weitverbreitesten, oder?<br />
* dateinamen exakt so benennen wie die enthaltenden klassen.<br />
* KlassenName.hpp, wenn sich um eine template-klasse handelt, ansonsten KlassenName.h</p>
</blockquote>
<p>Wäre mir unbekannt, dass die allzu verbreitet sind, geschweige denn weitverbreitet. Dateinamen im CamelCase kenne ich eigentlich nur aus Java, die <em>.hpp/</em>.h-Mix-Regel ist mir ehrlich gesagt noch nie untergekommen. Hast du irgendeine Quelle für diese Konventionen, am Besten mit Statistiken, die zeigen, wie häufig sie vorkommen? Nach allem, was ich bisher in verschiedenen Projekten und Beispielen (online und in Büchern) sehen konnte, sind Konventionen einfach unterschiedlich, einige etwas öfter vertreten als andere, aber keine so prominent, dass man sie jetzt als <em>die</em> allgemeingültige Konvention verkaufen könnte.</p>
</blockquote>
<p>ja würde mich jetz auch genauer interessieren.</p>
<p>ich forsch mal nen bisschen nach.</p>
<p>zu der <em>.h/</em>.hpp-geschichte liefer ich mal nen erklärungs-ansatz:<br />
ich kenns von *.hpp datein halt so, dass sie nicht nur deklarationen enthalten, sondern auch defintionen oder besser gesagt: echten programm-code.<br />
bei templates is halt genau das oft der fall.<br />
erst die nutzung eines templates definiert es ja wirklich komplett (jetzt default-spezialiserungen,etc.. ma ausgenommen). bindet man ein template ein und nutz es nicht, entsteht auch kein echter programm-code.</p>
<p>und wenn man sich die endung jetz ma anguckt:<br />
*.hpp</p>
<p>1. ist irgentwie ne vermischung aus *.cpp (code) und *.h (header).<br />
code + header<br />
-&gt; templates? könnte sinn machen.</p>
<p>2. kann man natürlich auch sehen als:<br />
pp-header<br />
-&gt; C++ header.<br />
dann fände ich es aber auch sinnvoll grundsätzlich folgende paarungen zu verwenden: <em>.hpp/</em>.cpp für c++ code und <em>.h/</em>.c für c.</p>
<p>kann man natürlich anders sehen. was meinst du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244429</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244429</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Wed, 22 Aug 2012 12:47:35 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 13:05:54 GMT]]></title><description><![CDATA[<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>und wenn man sich die endung jetz ma anguckt:<br />
*.hpp</p>
<p>1. ist irgentwie ne vermischung aus *.cpp (code) und *.h (header).</p>
</blockquote>
<p>Und wird von einigen Softwareunternehmen und Entwicklern auch als Header für C++ Source verwendet (ist mir u.a. bei Firmen begegnet die sowohl C als auch C++ gleichzeitig im Projekt verwenden, und eine striktere Trennung haben wollten). Ebenso wirst du hpp u.a. im C++ Builder Umfeld recht häufig bei Komponentenheadern finden.</p>
<p>Ich würde die Kirche daher im Dorf lassen und nicht weitere Konventionen einführen. Wichtig ist wie gesagt eigentlich nur das man einheitlich bleibt.</p>
<p>Wenn man beruflich mit Programmierung zu tun hat und nicht nur bei einer Firma bleibt, wird man ohnehin immer wieder mit anderen Konventionen für Projekten zu tun haben. Teilweise hat jedes Projekt in einer Firma wieder abweichende Konventionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244433</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 22 Aug 2012 13:05:54 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 13:39:36 GMT]]></title><description><![CDATA[<p>Gero_Programmierstil_de schrieb:</p>
<blockquote>
<p>kann man natürlich anders sehen. was meinst du?</p>
</blockquote>
<ul>
<li>boost hat afaik ausschließlich .hpp, egal was drin steht (ok, ist zu geschätzten 99,9% eh alles Template-Kram). Klassennamen und Header folgen beide Underscore-Konvention.</li>
<li>Bei SFML (weniger templates) scheinen es auch nur .hpp's zu sein, Klassennamen und Header im CamelCase</li>
<li>wxWidgets benutzt dagegen nur .h, Klassennamen als wxCamelCase, Headernamen als wx/lowercase.h</li>
<li>Ich benutze persönlich auch .cpp und .h, Klassennamen im CamelCase, Header im lowercase. .hpp benutze ich nur sehr selten, wenn ich z.B. einen boost-Header für meine Bedürfnisse modifizieren muss und diese modifizierte Kopie irgendwo bei mir unterbringe. In dem Fall behalte ich auch Schreibweisen für Klassen und Header bei.</li>
<li>Auf der Arbeit haben wir hauptsächlich .h, .c, weil unsere Codebase &quot;organisch&quot; gewachsen ist, im Original C war und bei der Umstellung einfach nur der Hebel am Compiler von C auf C++ umgelegt wurde. Neuere Dinge heißen häufig .cpp und .hpp, meistens heißt das im Klartext: &quot;.h/.c&quot; -&gt; ursprünglich C-Code, der mit dem einen oder anderen C++-Feature notdürftig gepimpt wurde. &quot;.cpp/.hpp&quot; -&gt; ursprünglicher C++-Code, bei dem man sich Mühe gegeben hat, objektorientiert zu arbeiten. Häufig auch C mit Klassen und ähnliches. Namen sind ähnlich gemischt, System gibts wenn man Glück hat immerhin innerhalb der einzelnen Module.</li>
</ul>
<p>Andere habe ich gerade nicht zur Hand, aber ich denke man darf sich auf Regel 0 von Sutter/Alexandrescu einigen. Ist wahrscheinlich ein ähnlich müßiges Thema wie Klammersetzung und Tab/Einzugsgröße <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Hauptsache es bleibt lesbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244438</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 22 Aug 2012 13:39:36 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 14:19:40 GMT]]></title><description><![CDATA[<p>Gutes Schlusswort dazu.</p>
<p>B2T: wit, weitergekommen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244444</guid><dc:creator><![CDATA[Gero_Programmierstil_de]]></dc:creator><pubDate>Wed, 22 Aug 2012 14:19:40 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 21:36:53 GMT]]></title><description><![CDATA[<p>ich bin grad erst heimgekommen und konnte folglich nicht weitermachen...<br />
hmm, eigentlich habe ich was anderes mit meiner Frage gemeint, aber irgendwie ist sie schwachsinnig umso länger ich darüber nachdenke</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7416">@gero</a>: Ich glaube ich habe verstanden was du meinst, aber ich verstehe den Sinn nicht so ganz <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> Könntest du es mir bitte nochmal erklären?</p>
<p>Edit: Ich mach jetzt erstmal alles in forward declarationen, bin vohin nimmer dazu gekommen...<br />
Edit2: Obwohl was du mit der init methode meinst habe ich doch noch nicht gerafft... Sowas wie auf der 1 Seite, dumm frag<br />
Edit 3: Das mit den Namen kann ich jetzt nimmer ändern werde ich aber in Zukunft machen<br />
Desweiteren wollte ich noch sagen, auch wenn ihr das über gero amüsant findet, das ich sehr froh bin das er mir soetwas wie z.B. solche Namensgeschichten sagt, weil ich ja wie gesagt niemanden kenne</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244569</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Wed, 22 Aug 2012 21:36:53 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 22:05:56 GMT]]></title><description><![CDATA[<p>grml, also das mit dem schnell ins forward declarationen umwandeln hat schon mal nicht geklappt *rofl<br />
aber jetzt wart ich mal den morgigen Tag ab, hab ja schon bissel was intus <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Edit: Hat jetzt doch funktioniert war nur zu blöd<br />
Edit2: Wow, compiliert der jetzt schneller, das der Unterschied so groß ist hätte ich nicht gedacht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244581</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244581</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Wed, 22 Aug 2012 22:05:56 GMT</pubDate></item><item><title><![CDATA[Reply to Zeigerproblem (kein Compilerfehler) in QtÜbung [close] on Wed, 22 Aug 2012 22:23:31 GMT]]></title><description><![CDATA[<p>So und weil ich grad eh schon am spamen bin, übersetze ich das richtig im Kontext?</p>
<p>0. Don't sweat the small stuff.<br />
Mach dir keine Sorger über die unwichtigen Sachen?</p>
<p>Don't overlegislate naming, but do use a consistent naming convention:<br />
und hier was heißt das Wort &quot;overlegislate&quot;? - übertreiben?</p>
<p>Hoffe ich nerv euch nicht zu sehr <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> aber wenn will ich schon alles wissen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2244588</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2244588</guid><dc:creator><![CDATA[wit]]></dc:creator><pubDate>Wed, 22 Aug 2012 22:23:31 GMT</pubDate></item></channel></rss>