Welcher C++ Editor findet ihr am besten?
-
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).
-
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 einfacheinline
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 einfacheinline
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).
-
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
-
Dieser Thread wurde von Moderator/in Phoemuex aus dem Forum C++ in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Badestrand schrieb:
Wikinger75 schrieb:
...
Verwechselst du zufällig MFC mit VS?
Nein tut er nicht. Er hat defacto recht.
Sobald die MFC dabei ist, kostet das Produkt Geld. Ohne MFC ( VS 2008 Express ) ist es kostenlos.Aber wenn man unbedingt korinthen-kacken will, hast du natürlich recht.
-
Hey, wurde schon Vim genannt? Also: Vim natuerlich!
-
korrigierer schrieb:
Badestrand schrieb:
Wikinger75 schrieb:
...
Verwechselst du zufällig MFC mit VS?
Nein tut er nicht. Er hat defacto recht.
Folgendes hört sich wohl stark nach MFC<->VS-Verwechslung an:
"MFC würde ich dir nur raten, wenn du mit dem NET-Framework proggn willst."
-
So, jetzt wollte ich mal mitteilen, dass ich mich entschieden habe
Ich nehme den IDE Geany! Der hat so eine aufgeräumte Oberfläche wie Anjuta und ich finde, dass man mit dem sehr gut was machen kann
Das feine ist auch, dass er für HTML auch geeignet ist
mfg
-
knivil schrieb:
Vim natuerlich!
*bingo* da isser wieder. emacs war auch schon da. es wird wohl nie einen editor-thread geben, ohne dass diese beiden prähistorischen dinger genannt werden.
-
Es ist einfach Pflicht, der Vim-Krieger zwingt mich dazu. Kein anderer kann vertikale Bloecke markieren (ja, ein aktiv genutztes Feature von mir).
-
knivil schrieb:
Kein anderer kann vertikale Bloecke markieren
Irgendwie faellt mir da gerade kein Anwendungsfall ein... wo brauchst Du sowas?
Ivo
-
Will z.B. Teile des Codes in 'ne Funktion auslagern => Text ausgeschnitten und an leerer Stelle eingefuegt, Signatur geschrieben ... hmm die Einrueckung stimmt nicht (jaja, triviales Beispiel, aber die anderen sind zu lang, um sie aufzuschreiben).
-
knivil schrieb:
Es ist einfach Pflicht, der Vim-Krieger zwingt mich dazu. Kein anderer kann vertikale Bloecke markieren (ja, ein aktiv genutztes Feature von mir).
Eigentlich können das mittlerweile schon einige andere Editoren. Emacs und Textmate wären zB zwei, die ich selbst sehr gerne verwende. Wobei ich mich sonst an diesem Thread nicht beteiligen möchte, dafür schreibe ich heutzutage einfach zu wenig C++.
-
Kein anderer war auch uebertrieben :). Textmate ist kostenpflichtig und Emacs wurde ja auch schon als praehistorisch abgestempelt.
-
+fricky schrieb:
knivil schrieb:
Vim natuerlich!
*bingo* da isser wieder. emacs war auch schon da. es wird wohl nie einen editor-thread geben, ohne dass diese beiden prähistorischen dinger genannt werden.
elVIs ist eh viel besser.
-
Ivo schrieb:
knivil schrieb:
Kein anderer kann vertikale Bloecke markieren
Irgendwie faellt mir da gerade kein Anwendungsfall ein... wo brauchst Du sowas?
das ist ein sehr nettes feature, z.b:
du hast ein ganzer Block von Namen, die du als define definieren willst:
#define SOME (1 << 31) #define BITS (1 << 30) #define OF (1 << 29) ... #define A (1 << 1) #define REGISTER (1 << 0)
Und nun hast du bemerkt, dass BITS A und REGISTER bereits als Makros hast, du willst also eine Prefix 'GOODREG' an den 32 Bits setzen: Die vim Lösung:
- Cursor auf S von '#define SOME' setzen und <ESC> drücken,
- Strg+V drücken
- 30jI drücken
- GOODREG eingeben, <ESC> drücken, voilàDer Block-Selector ist unschlagbar, wenn du Texte verändern willst, die in Blöcken aufgebaut sind(siehe oben ein Bsp).
Ein anderes: du hast eine Liste angefangen:
1. text 2. text 3. noch mehr text
Tage später fährst du fort
4. text ... 9. text
Dann fällt dir auf, dass mit 10. ein Zeichen mehr hast, und du willst jetzt von 1. bis 9. in 01. bis 09. umwandeln. Was nimmst du? Genau, Vertikaler Block selector
Erst wenn man den hat, will man den nie mehr vermissen. Vim und emcas haben Tausender solcher 'kleine Features', die am Anfang nutzlos erscheinen, aber nach ihrer Entdeckung unverzichtbar sind. Und darum verwende ich vim für alles, denn ich kann in keinem anderen Editor so schnell und effizient Text manipulieren.
-
Benutze Qt Creator, hat alles was Ich brauche.