<?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[Übersichtlich Programmieren]]></title><description><![CDATA[<p>Abend</p>
<p>Wahrscheninlich wurde das Thema schon mehrmals angeschnitten.</p>
<p>Macht es Sinn mehrere .cpp in einem Projekt zu verwenden?</p>
<p>Ich würde gerne einige Hilfsfunktionen in andere .cpp verschieben und sie dann im main.cpp laden und verwenden.</p>
<p>Somit könnte ich in der main.cpp mehr Übersicht gewinnen. Ihr seid erfahrene Programmierer und ich würde mich über Tipps und Tricks zum Thema Übersichtlichkeit freuen.</p>
<p>Gruss</p>
<p>//Edit Noch was, da man in den anderen .cpp auch #includes machen muss hat es von der Performance sicher auch Nachteile?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218954/übersichtlich-programmieren</link><generator>RSS for Node</generator><lastBuildDate>Thu, 08 Oct 2026 15:10:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218954.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 27 Jul 2008 19:34:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 19:36:12 GMT]]></title><description><![CDATA[<p>Abend</p>
<p>Wahrscheninlich wurde das Thema schon mehrmals angeschnitten.</p>
<p>Macht es Sinn mehrere .cpp in einem Projekt zu verwenden?</p>
<p>Ich würde gerne einige Hilfsfunktionen in andere .cpp verschieben und sie dann im main.cpp laden und verwenden.</p>
<p>Somit könnte ich in der main.cpp mehr Übersicht gewinnen. Ihr seid erfahrene Programmierer und ich würde mich über Tipps und Tricks zum Thema Übersichtlichkeit freuen.</p>
<p>Gruss</p>
<p>//Edit Noch was, da man in den anderen .cpp auch #includes machen muss hat es von der Performance sicher auch Nachteile?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554756</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554756</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Sun, 27 Jul 2008 19:36:12 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 19:36:20 GMT]]></title><description><![CDATA[<p>Eine .cpp Datei - eine Aufgabe.<br />
Das ist wie mit Klassen: eine Klasse - eine Aufgabe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554758</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Sun, 27 Jul 2008 19:36:20 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 19:42:06 GMT]]></title><description><![CDATA[<p>Wir lernen momentan in der Schule c++.</p>
<p>Leider auf einem völlig veraltetem Compiler (Borland 5) und immer nur mit einer .cpp.</p>
<p>Weil ich das besser machen möchte habe ich mir MS Visual Studio geholt und bin fleissig am probieren und lernen. Nächste Woche kommt mein C++ Primer Buch <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>
<p>Eine .cpp eine Aufgabe?</p>
<p>Ich habe hier zum Beispiel eine Aufgabe mit einem Menü, man muss Datensätze hinzufügen, Datensätze löschen, etc.... Wenn ich das richtig verstehe würdest du für jede Aufgabe eine eigene .cpp benutzen? Ist das nicht schlecht wenn man am Ende 8 .cpp hat? <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1554761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554761</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Sun, 27 Jul 2008 19:42:06 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 19:49:39 GMT]]></title><description><![CDATA[<p>das kannst du im etwas weiteren sinne sehen.<br />
hier: eine cpp -&gt; aufgabe: verwaltung v. menue/datensaetzen (ggf. cpp- + h-file f. eine klasse)<br />
eine weitere cpp: main.cpp, wo main-loop usw. gemanaged wird</p>
<p>mfg,<br />
julian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554768</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554768</guid><dc:creator><![CDATA[Julian__]]></dc:creator><pubDate>Sun, 27 Jul 2008 19:49:39 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 19:56:21 GMT]]></title><description><![CDATA[<p>Ja das mit den Klassen hab ich so gemacht.</p>
<p>Also ist es ein Fehler wenn ich eine Funktion in eine andere .cpp schiebe und sie dann in meiner main.cpp verwende?</p>
<p>Gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554774</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554774</guid><dc:creator><![CDATA[Typhoon]]></dc:creator><pubDate>Sun, 27 Jul 2008 19:56:21 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 20:10:05 GMT]]></title><description><![CDATA[<p>Typhoon schrieb:</p>
<blockquote>
<p>Also ist es ein Fehler wenn ich eine Funktion in eine andere .cpp schiebe und sie dann in meiner main.cpp verwende?</p>
</blockquote>
<p>rein formal nicht, nein.<br />
ob es auch sinnvoll ist, ist so pauschal schwer zu sagen.</p>
<p>mfg,<br />
julian</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554783</guid><dc:creator><![CDATA[Julian__]]></dc:creator><pubDate>Sun, 27 Jul 2008 20:10:05 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 20:11:37 GMT]]></title><description><![CDATA[<p>Typhoon schrieb:</p>
<blockquote>
<p>Also ist es ein Fehler wenn ich eine Funktion in eine andere .cpp schiebe und sie dann in meiner main.cpp verwende?</p>
</blockquote>
<p>Du solltest sie in einem Header deklarieren, und diesen Header in die main.cpp einbinden, sodass sie dort bekannt ist.</p>
<p><em>Wieso ist das Forum eigentlich gerade so langsam?</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554786</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 27 Jul 2008 20:11:37 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Sun, 27 Jul 2008 20:13:05 GMT]]></title><description><![CDATA[<p>Ein Fehler wäre es nicht, es bietet sich eben nur bei größeren Projekten an, zusammengehörende Klassen und Funktionen in die gleiche .h und .cpp Kombination zu tun und Klassen und Funktionen, die nichts damit zu tun haben, davon zu trennen. Man kann auch jede Klasse von den anderen trennen, das ist aber Geschmackssache. Ich bevorzuge es, wenn es in einer Datei zu finden ist, sofern es zusammengehört und solange die Klassen nicht zu groß werden. Aber das ist wie gesagt jedem selber überlassen, wie er das gut findet.</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554787</guid><dc:creator><![CDATA[Jasc]]></dc:creator><pubDate>Sun, 27 Jul 2008 20:13:05 GMT</pubDate></item><item><title><![CDATA[Reply to Übersichtlich Programmieren on Mon, 28 Jul 2008 07:17:09 GMT]]></title><description><![CDATA[<blockquote>
<p>//Edit Noch was, da man in den anderen .cpp auch #includes machen muss hat es von der Performance sicher auch Nachteile?</p>
</blockquote>
<p>Bei der Ausführung des Programms brauchst du keine Nachteile erwarten. Ggf. dauert das Übersetzen etwas länger.</p>
<p>Die Header-Dateien dienen dem Compiler dazu, um zu wissen, WIE die Funktionen/Klassen/Methoden aussehen: Welchen Rückgabetyp sie haben, welche Parameter erwartet werden etc. Aus der Quelldatei (.cpp) wird eine Objektdatei erzeugt. Gut erkennen kann man das, wenn man &quot;von Hand&quot; übersetzt (z.B. mit dem GCC).</p>
<p>Gegeben seien drei Dateien:</p>
<pre><code class="language-cpp">// main.cpp
#include &quot;hello.hpp&quot;
int main()
    {
        cppde::hello();
    }
</code></pre>
<pre><code class="language-cpp">// hello.hpp
#if !defined(CPPDE_HELLO_HPP__INCLUDED)
#define CPPDE_HELLO_HPP__INCLUDED
// Der so genannte Include-Guard verhindert, dass diese Dateien mehrfach
//  eingebunden werden können

// In Headerdateien NIEMALS using namespace verwenden

namespace cppde {
void hello();
  // Diese Funktion gibt ein &quot;Hello World&quot; über cout aus.
}
#endif
</code></pre>
<pre><code class="language-cpp">// hello.cpp
#include &quot;hello.hpp&quot;
#include &lt;iostream&gt; // Wird erst hier eingebunden, da es eine &quot;Implementierungs-
  //  detail&quot; ist.

void cppde::hello()
    {
        std::cout &lt;&lt; &quot;Hello World&quot; &lt;&lt; std::endl;
    }
</code></pre>
<p>&quot;Von Hand&quot; übersetzt gingest du nun folgendermaßen vor:</p>
<pre><code>1. übersetze/kompiliere hello.cpp -&gt; Erzeugt eine Objektdatei hello.o
2. übersetze/kompiliere main.cpp -&gt; Erzeugt eine Objekdatei main.o
3. verbinde/linke main.o mit hello.o und erzeuge das Programm HalloWelt
   -&gt; Erzeugt ausführbare Datei HalloWelt

Richtig angewendet sähe das so aus:
&gt; g++ -c hello.cpp
&gt; g++ -o HalloWelt main.cpp hello.o
Schritt 2 und 3 wurden hier zusammengefasst.

Da du eine IDE verwendest, sind diese Schritte für dich ohnehin nicht mehr sichtbar.
</code></pre>
<p>Die Funktionalitäten (Objektcode) aus &lt;iostream&gt; oder &lt;string&gt; werden auch erst im letzten Schritt (Linking) einmalig hinzugefügt. Es spielt also für dein fertiges Programm keine Rolle, ob du &lt;iostream&gt; nur einmal oder 100 mal in dein Projekt inkludierst.</p>
<p>Existiert die Objektdatei, welche auch in einer Bibliothek vorhanden sein kann, nicht, so entstehen die allseits geliebten <em>undefined reference</em>-Fehlermeldungen.</p>
<p>Grüße... Heiko</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1554901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1554901</guid><dc:creator><![CDATA[bwbg]]></dc:creator><pubDate>Mon, 28 Jul 2008 07:17:09 GMT</pubDate></item></channel></rss>