<?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[Ein Programm organisieren in C++]]></title><description><![CDATA[<p>Ich bin gerade dabei fuer die dateien main.cpp, class.cpp und class.h notizen zu machen. Laut Buch bzw. nach meinem Verstaendnis ist es wie folgt:</p>
<p>main.cpp = Das Hauptprogramm, sie fuehrt die anderen Programme aus und deklariert die Klassen</p>
<p>class.h = Definition einer Klasse, Klassenmodule werden deklariert.</p>
<p>class.cpp = Definition der Klassenmodule</p>
<p>Ist dies richtig oder koennte ich noch was hinzufuegen ?<br />
Wenn ich kleinere Programme mache sollte ich diese auch erstmal definieren(h-Datei) und dann ausdefinieren(cpp-Datei) ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/272993/ein-programm-organisieren-in-c</link><generator>RSS for Node</generator><lastBuildDate>Fri, 28 Aug 2026 16:26:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/272993.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 29 Aug 2010 10:59:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:08:57 GMT]]></title><description><![CDATA[<p>Ich bin gerade dabei fuer die dateien main.cpp, class.cpp und class.h notizen zu machen. Laut Buch bzw. nach meinem Verstaendnis ist es wie folgt:</p>
<p>main.cpp = Das Hauptprogramm, sie fuehrt die anderen Programme aus und deklariert die Klassen</p>
<p>class.h = Definition einer Klasse, Klassenmodule werden deklariert.</p>
<p>class.cpp = Definition der Klassenmodule</p>
<p>Ist dies richtig oder koennte ich noch was hinzufuegen ?<br />
Wenn ich kleinere Programme mache sollte ich diese auch erstmal definieren(h-Datei) und dann ausdefinieren(cpp-Datei) ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945624</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945624</guid><dc:creator><![CDATA[THE-E]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:08:57 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:14:03 GMT]]></title><description><![CDATA[<p>Es ist absolut wurscht, wie du die Dateien nennst. &quot;main.cpp&quot; kann auch &quot;datei_mit_einsprungpunkt_istgleich_int_main.cpp&quot; heißen. Entscheidend ist, dass du (wenn du keine Lib erstellst) irgendwo eine &quot;int main()&quot; anlegst, diese Datei mitkompilierst und das Objectfile mitlinkst.</p>
<p>Außerdem verwendest du komische Begriffe <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>main.cpp = Das Hauptprogramm, sie fuehrt die anderen Programme aus und deklariert die Klassen</p>
<p>class.h = Definition einer Klasse, Klassenmodule werden deklariert.<br />
...<br />
Wenn ich kleinere Programme mache sollte ich diese auch erstmal definieren(h-Datei) und dann ausdefinieren(cpp-Datei) ?</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1945630</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945630</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:14:03 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:15:25 GMT]]></title><description><![CDATA[<p>Sehr gut.</p>
<p>Allerdings kannste manchmal frische Klassen in der main.cpp halten, bis sie ein wenig stabiler sind und erst dann in die class.h auslagern. Und da auch noch eine oder zwei Woche wachsen lassen und erst dann in class.cpp und class.h splitten.<br />
Mach's so, wie es Dir weniger Arbeit macht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945631</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:15:25 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:28:36 GMT]]></title><description><![CDATA[<p>Danke fuer euere Antworten</p>
<p>volkard schrieb:</p>
<blockquote>
<p>Allerdings kannste manchmal frische Klassen in der main.cpp halten, bis sie ein wenig stabiler sind und erst dann in die class.h auslagern. Und da auch noch eine oder zwei Woche wachsen lassen und erst dann in class.cpp und class.h splitten.<br />
Mach's so, wie es Dir weniger Arbeit macht.</p>
</blockquote>
<p>Weiss man nicht beim programmieren ob die Klasse stabil ist oder nicht ?<br />
Was genau soll diese Art von vorgehen verhindern ? Bugs ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945637</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945637</guid><dc:creator><![CDATA[THE-E]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:28:36 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:32:38 GMT]]></title><description><![CDATA[<p>Das ist nach meinem Geschmack eigentlich schon zu speziell. Außerdem stimmt deine Ausdrucksweise nicht ganz. Ganz allgemein kann man sagen:</p>
<p>Headerdateien (.h, .H, .hpp, .h++, ...): Hier <strong>deklariert</strong> man Dinge. Enthält in manchen Fällen auf Definitionen von gewissen Dingen: Templates und Funktionen die inline werden sollen. Diese ausnahmen haben aber technische Gründe um doofen Compilern auf die Sprünge zu helfen (gerade bei Templates kann das auf der Welt glaube ich nur der Comeau Compiler wenn man sie nicht im Header definiert). Idealerweise sollten sich in einer Headerdatei nur Deklarationen befinden.</p>
<p>Quelltextdateien (.c, .C, .cc, .cpp, ...): Hier finden sich Definitionen. Üblicherweise hat man zu einer Quelltextdatei noch eine gleichnamige Headerdatei, mit der die Definitionen aus dem Quelltext per Deklaration in anderen Quelltextdateien bekannt gemacht werden können und somit nutzbar sind. Die gleiche Namensgebung ist natürlich nur Konvention, aber eine gute. Umgekehrt kommt es aber recht häufig vor, dass zu einer Headerdatei keine zugehörige Sourcecodedatei existiert, weil der Inhalt des Headers alleine schon ausreicht. In Quelltextdateien selber wird nie etwas bloß deklariert, das würde überhaupt keinen Sinn machen.</p>
<p>Wenn man ein ausführbares Programm erstellen will, muss man in einer Quelltextdatei eine main-Funktion definieren. main.cpp ist eine häufige Namenskonvention für diese Datei, andere Konventionen sind der Name des Programms, häufig auch mittels anderer Groß-Kleinschreibung von &quot;normalen&quot; Quelltextdateien ohne main-Funktion abgesetzt. Die Quelltextdatei mit der main-Funktion wird naturgemäß auch Sachen aus den anderen Quelltextdateien benutzen wollen, muss also die entsprechenden Header einbinden. Selbst Deklariert wird in dieser Datei, wie in anderen Quelltextdateien, nichts.</p>
<p>Das alles läuft also im Prinzip auf den unterschied zwischen Definition und Deklaration heraus. Das ist hoffentlich in deinem Buch gut erklärt, das ist wichtig. ansonsten hier noch ein Link:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-61231.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-61231.html</a><br />
Außerdem wird die Frage alle paar Wochen hier im Forum durchgekaut (jetzt schon wieder <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="🙂"
    /> ), da sollte sich mit der Forensuche viel zu finden lassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945641</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:32:38 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:39:24 GMT]]></title><description><![CDATA[<p>THE-E schrieb:</p>
<blockquote>
<p>Danke fuer euere Antworten</p>
<p>volkard schrieb:</p>
<blockquote>
<p>Allerdings kannste manchmal frische Klassen in der main.cpp halten, bis sie ein wenig stabiler sind und erst dann in die class.h auslagern. Und da auch noch eine oder zwei Woche wachsen lassen und erst dann in class.cpp und class.h splitten.<br />
Mach's so, wie es Dir weniger Arbeit macht.</p>
</blockquote>
<p>Weiss man nicht beim programmieren ob die Klasse stabil ist oder nicht ?</p>
</blockquote>
<p>Woher denn?</p>
<p>THE-E schrieb:</p>
<blockquote>
<p>Was genau soll diese Art von vorgehen verhindern ? Bugs ?</p>
</blockquote>
<p>Arbeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945644</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:39:24 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 11:54:48 GMT]]></title><description><![CDATA[<p>Vielen vielen dank fuer deine ausfuehrlich und einleuchtende Antwort <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="🙂"
    /> <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="👍"
    /></p>
<p>Das mit der Headerdatei ist in meinem Buch leider einbisschen anders erklaert darum auch die Verwirrung.</p>
<p>C++ von A bis Z(2.Auflage) schrieb:</p>
<blockquote>
<p>Hierbei wird gewoehnlich die Definition in eine separate Header-Dateigepackt. Auch die Definition der Klassenmethoden sollte man in ein anderes Modul packe - dafuer sollte allerdings keine Header-Datei mehr verwendet werden, sondern eine weitere Quelldatei(.cpp)</p>
</blockquote>
<p>Sorry fuer das Fragen dieser Dauerfrage. Ich werd beim naechsten mal intensiver Suchen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945650</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945650</guid><dc:creator><![CDATA[THE-E]]></dc:creator><pubDate>Sun, 29 Aug 2010 11:54:48 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 12:10:48 GMT]]></title><description><![CDATA[<p>Ah, Buch <a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-1940463.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-p-is-1940463.html</a></p>
<p>Sorry, ich nahm an, daß SeppJs Sachen schon recht klar wären und es eher darum ging, ob wirklich pro Klasse immer zwei Dateien, ob man auch mal inline definiert, und so ein Krimskrams.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945656</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sun, 29 Aug 2010 12:10:48 GMT</pubDate></item><item><title><![CDATA[Reply to Ein Programm organisieren in C++ on Sun, 29 Aug 2010 17:10:35 GMT]]></title><description><![CDATA[<p>Gibt es ein Buch was aktuell ist und in einer angenehmen Sprache erklaert wird. Ich habe <strong>Die C++ Programmiersprache</strong> von <strong>Bjarne Stroustrup(4.aktualisierte Auflage/Addison-Wesley)</strong>, aber fand das als Einstieg nicht sehr geeignet, da C++ meine erste Programmiersprache ist.</p>
<p>Ich habe jetzt ca. die Haelfte vom Buch von J.W. durch sollte ich lieber wechseln und das Buch von Addison-Wesley anfangen, die Basics habe ich kapiert, war gerade bei Standard Template Library. Kann man Das Addison-Wesley Buch ueberhaupt so durchlesen wie das von J.W. ? Ich frage weil da kein Lesezeichen ist, muss ja nicht bedeuten aber wenn es sich wie ein Duden liest vergeht einem die Lust.</p>
<p>Gruß</p>
<p>THE-E</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1945800</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1945800</guid><dc:creator><![CDATA[THE-E]]></dc:creator><pubDate>Sun, 29 Aug 2010 17:10:35 GMT</pubDate></item></channel></rss>