Welcher C++ Editor findet ihr am besten?



  • Kauf dir die Schulversion von Visual Studio 2008 Prof., kriegste schon für knapp über 100.



  • Also ich bevorzuge eher Code::Blocks und ich bin damit sehr zufrieden.
    Und ist im gegensatz zu MFC umsonst 😉 .
    Er unterstüzt sämtliche GUI's und er hat den GCC als Compiler.

    MFC würde ich dir nur raten, wenn du mit dem NET-Framework proggn willst.

    Mfg Wikinger75!



  • Code::Blocks ist Okey aber mir selber reicht ein editor und ein übersetzer (compiler). Mehr ist auch nicht nötig.



  • Wikinger75 schrieb:

    ...

    Verwechselst du zufällig MFC mit VS? 😉


  • Administrator

    Badestrand schrieb:

    Wikinger75 schrieb:

    ...

    Verwechselst du zufällig MFC mit VS? 😉

    Er verwechselt es wahrscheinlich nicht nur, sondern er hat auch falsche Informationen. der MSVC ist auch umsont, wenn man die Express Edition nimmt. Gut, dort ist dann wirklich keine MFC dabei, aber bei Code::Blocks ist auch nichts ähnliches, wie die MFC dabei 🙂

    Zudem die Empfehlung nur für .Net finde ich ein wenig seltsam. Der MSVC hat schon eine sehr lange C und C++ Tradition, wenn auch früher teilweise eine sehr eigenwillige.
    Zudem kann man den MSVC mit weiteren Kompilern erweitern, zum Beispiel gibt es dazu einen netten COBOL Kompiler. Allerdings nicht für die Express Version.

    @squidward,
    Kommt darauf an, welche grösse von Projekt man hat. Bei kleinen Progrämmchen mag das noch gehen. Es geht auch mit grösseren, wird nur unnötig aufwendig.

    Grüssli



  • Ich benutze am liebsten den Emacs.

    btw. gehört das wohl eher in das Compiler/IDE-Forum.



  • Wikinger75 schrieb:

    Also ich bevorzuge eher Code::Blocks und ich bin damit sehr zufrieden.
    Und ist im gegensatz zu MFC umsonst 😉 .

    MFC = Bibliothek (WinAPI in Klassen gekapselt von MS)

    MSVC ist auch umsonst (in der Express Edition; damit lassen sich ausfuehrbare Programme erstellen und auch (kommerziell) vertreiben ist erlaubt; die MFC ist in der Express Edition nicht dabei).

    Wikinger75 schrieb:

    Er unterstüzt sämtliche GUI's und er hat den GCC als Compiler.

    Die unterstuetzt MSVC auch.

    Wikinger75 schrieb:

    MFC würde ich dir nur raten, wenn du mit dem NET-Framework proggn willst.

    Was hat das eine mit dem anderen zu tun? Ich benutze MSVC und bin gegen das .NET-Framework.

    Gruss
    Cartman



  • hm... danke für die Zahlreichen Antworten! Also ich habe leider kein Geld als Schüler um mir etwas zu kaufen 😢 Leider... Was ich so aus den meisten Posts verstanden habe, verwenden die meisten einen normalen Editor und kopilieren selber über das Terminal... Vielleicht ist dies auch die beste Methode, und ich werde die jetzt mal ausprobieren mit versch. Editoren!

    mfg


  • Administrator

    prochecker schrieb:

    Was ich so aus den meisten Posts verstanden habe, verwenden die meisten einen normalen Editor und kopilieren selber über das Terminal... Vielleicht ist dies auch die beste Methode, und ich werde die jetzt mal ausprobieren mit versch. Editoren!

    Ehm, du solltest es vielleicht nochmals lesen und zählen.
    Es haben sich konkret 6 Personen zu deiner Frage geäussert. Davon haben dir 4 eine IDE empfohlen und 2 einen Editor und zusätzlichen Kompiler. Wobei es ein wenig fraglich ist, ob man bei Emacs noch von Editor sprechen darf 🙂

    Was ist im übrigen an Code::Blocks zu vollgestopft, langsam und was für eine Formatierung fehlt da? Irgendwie empfinde ich alle Punkte als nicht gegeben, oder ist die Code::Blocks Ubuntu Variante so verschieden von der Windows Variante?

    Grüssli



  • Also Eclipse ist bei mir zu langsam, aber es würde mir am besten von allen IDE's gefallen. Ich finde die IDE's immer noch besser wie Editoren, weil kompilieren über das Terminal ist mit der Zeit ein wenig idiotisch. Werden Headerdateien überhaupt noch verwendet? Weil bei Anjuta wird immer eine automatisch erstellt und eingebunden, und da ich nie eine Headerdatei benötige, muss ich sie immer wieder löschen, und das finde ich ein wenig überflüssig. Kann man das irgendwie abstellen?

    mfg



  • prochecker schrieb:

    Also Eclipse ist bei mir zu langsam, aber es würde mir am besten von allen IDE's gefallen. Ich finde die IDE's immer noch besser wie Editoren, weil kompilieren über das Terminal ist mit der Zeit ein wenig idiotisch. Werden Headerdateien überhaupt noch verwendet? Weil bei Anjuta wird immer eine automatisch erstellt und eingebunden, und da ich nie eine Headerdatei benötige, muss ich sie immer wieder löschen, und das finde ich ein wenig überflüssig. Kann man das irgendwie abstellen?

    mfg

    Also ich benutze Eclipse für Webzeugs und da eigenet es sich auch recht gut, allerdings muss ich dir recht geben. Es ist teilweise saulahm und hängt ohne Grund, wenn man z.B speichern will. So etwas nervt einfach.

    Zu der Frage wegen den Headern:
    Ja klar werden die verwendet. Wie machst du sonst deine Schnittstellen zu anderen Klassen? - Ohne die Header-Technik ist es praktisch nicht möglich anständig zu arbeiten.. 🙄
    Oder habe ich die Frage falsch verstanden?



  • hm... also ich habe nie einen Header benötigt für meine Taschenrechner 😉 Ich bin ja erst noch am lernen... Was steht dann in so einem Header drinnen? Ich blicke da noch nicht ganz durch...

    mfg


  • Administrator

    drakon schrieb:

    Ja klar werden die verwendet. Wie machst du sonst deine Schnittstellen zu anderen Klassen? - Ohne die Header-Technik ist es praktisch nicht möglich anständig zu arbeiten.. 🙄
    Oder habe ich die Frage falsch verstanden?

    Das gleiche frage ich mich gerade auch.

    @prochecker,
    Wie bitte? Auf Header verzichten? Gehts noch? *lol* 😃
    In meinen Projekten habe ich im Allgemeinen mehr Header als Implementationsdateien (also Anzahl *.hpp > Anzahl *.cpp).

    (In der Vorschau grad noch deine Antwort gesehen)
    Dies verrät dir am besten ein gutes C++ Buch oder Tutorial. Zu empfehlen sind:

    • C++ Primer
    • Thinking in C++ 1 & 2

    Edit: Falls du mit dem Terminal & Editor arbeitest, wären übrigens auch Makefiles dann ganz interessant. Aber zuerst lern mal lieber C++ 🙂

    Grüssli



  • Visual Studio ist nicht nur eine gute IDE, sondern hat auch einen ziemlich guten Compiler mit ziemlich schönen Eweiterungen 🙂
    Für Windows-Only-Entwicklung quasi ein *muss*.

    Ansonsten ist der GCC vorzuziehen, da es ihn für jedes OS gibt und man sich dann nicht auch noch um Compiler(un)abhängigkeit sorgen muss.

    Alle IDEs haben einen Nachteil: im Editieren von Text sind sie nicht besser als Notepad.
    Daher ist für mich der beste C++-Editor ganz klar Emacs und die beste IDE ganz klar Visual Studio (mit Visual Assist X).



  • Dravere schrieb:

    @prochecker,
    Wie bitte? Auf Header verzichten? Gehts noch? *lol* 😃
    In meinen Projekten habe ich im Allgemeinen mehr Header als Implementationsdateien (also Anzahl *.hpp > Anzahl *.cpp).

    Hm, also bei mir ist im Regelfall Anzahl .hpp = Anzahl .cpp - 1 (bei Anwendungen, Bibliotheken schreibe ich selten).


  • Administrator

    Tippgeber schrieb:

    Hm, also bei mir ist im Regelfall Anzahl .hpp = Anzahl .cpp - 1 (bei Anwendungen, Bibliotheken schreibe ich selten).

    Du solltest mal den lieben Templates "Hallo" sagen 🙂
    Aber auch abgesehen von den Templates, habe ich manchmal gewisse Header, welche nur Vorwärtsdeklarationen oder Typdefinitionen beinhalten. Kommt manchmal auch vor, dass nur Makros im Header anzufinden sind oder ein paar einfache inline Hilfsfunktionen. Ich habe immer wieder ein paar leichtgewichtige Header, welche an mehreren Stellen Verwendung finden.

    Grüssli



  • Ich habe eigentlich auch immer mehr Header, als Implementierungsdateien. Alleine, weil ich füde jede .cpp eine .h habe und halt zusätzlich noch irgendwas dazu kommt, wie templates oder auch Funktionen, die ich gleich so bereitstelle.



  • Dravere schrieb:

    Tippgeber schrieb:

    Hm, also bei mir ist im Regelfall Anzahl .hpp = Anzahl .cpp - 1 (bei Anwendungen, Bibliotheken schreibe ich selten).

    Du solltest mal den lieben Templates "Hallo" sagen 🙂
    Aber auch abgesehen von den Templates, habe ich manchmal gewisse Header, welche nur Vorwärtsdeklarationen oder Typdefinitionen beinhalten. Kommt manchmal auch vor, dass nur Makros im Header anzufinden sind oder ein paar einfache inline Hilfsfunktionen. Ich habe immer wieder ein paar leichtgewichtige Header, welche an mehreren Stellen Verwendung finden.

    Grüssli

    Nur weil in einem Header ein Template steht muss man ja noch lange keine .cpp dazu haben, oder packst du jede noch so kleine Klasse in eine eigene Datei? Ich gruppiere da immer ein wenig (so lange die .cpp dann nicht zu groß wird).


  • Administrator

    Tippgeber schrieb:

    ..., oder packst du jede noch so kleine Klasse in eine eigene Datei? Ich gruppiere da immer ein wenig (so lange die .cpp dann nicht zu groß wird).

    Jede Klasse mindestens ein Header File, falls kein Klassentemplate dann auch noch ein Implementation File. Also zu deiner Frage: Ja.
    Ich habe früher auch gruppiert, musste aber mit der Zeit feststellen, dass dies die Kompilezeit behindert und die Übersichtlichkeit stark beschneidet. Es kann zwar zum Teil vorkommen, dass mehrere Klassen im gleichen File sind, aber das ist eine Ausnahme und die anderen Klassen sind höchstens Hilfsklassen oder Exceptions, welche nur von dieser Klasse verwendet werden.

    Dadurch habe ich oft sehr kurze Header, wodurch man schnell die Informationen findet, welche man sucht.
    Template Implementation folgt bei mir getrennt nach der Deklaration im Header. Ich schliesse sogar die Namensräume dazwischen und öffne sie erneut.

    Grüssli



  • hm... ich werde das mit den Headern mal in einem Buch nachstöbern müssen... Auf dieser Seite gibt es eh eine Menge gut Tutorials 😉 Ich habe mich jetzt für Anjuta entschieden und ich hoffe ich bringe es in C++ zu etwas 😉

    mg
    fg


Anmelden zum Antworten