Eure Programmierkonventionen ?
-
Kann es sein, dass du dich wiederholst?
Ich habe bereits verstanden, was man mit Tabs für Probleme kriegen kann. Du brauchst das nicht nochmal posten!

Du wolltest sagen : Mit Tabs kann man sich schnell mal die Einrückung kaputt machen, da aus
for (std::vector<int>::const_iterator it = v.begin (), et = v.end (); it != et; ++it) {schnell mal etwas werden kann, wie :
for (std::vector<int>::const_iterator it = v.begin (), et = v.end (); it != et; ++it) {Naja! Eigentlich wolltest du wohl sagen, dass das nicht der Fall sein muss, wenn man an den richtigen Stellen Leerzeichen nimmt.
-
Original erstellt von Gregor:
**Kann es sein, dass du dich wiederholst?Ich habe bereits verstanden, was man mit Tabs für Probleme kriegen kann. Du brauchst das nicht nochmal posten!

Du wolltest sagen : Mit Tabs kann man sich schnell mal die Einrückung kaputt machen, da aus
for (std::vector<int>::const_iterator it = v.begin (), et = v.end (); it != et; ++it) {schnell mal etwas werden kann, wie :
for (std::vector<int>::const_iterator it = v.begin (), et = v.end (); it != et; ++it) {**
dann muss man aber schon ziemlich viel getrunken haben ...
-
Original erstellt von <;)>:
dann muss man aber schon ziemlich viel getrunken haben ...Nö! Man muss nur ne IDE/Editor mit ner anderen Tab-Breite nutzen. Schon sieht der Code so aus.
-
Original erstellt von Gregor:
[quote]Original erstellt von <;)>:
[qb]dann muss man aber schon ziemlich viel getrunken haben ...Nö! Man muss nur ne IDE/Editor mit ner anderen Tab-Breite nutzen. Schon sieht der Code so aus.[/QB][/QUOTE]
standard ist 4 leerzeichen, sonnst würde es zu schnell über den bildschirm rand gehen. da kann der ordentliche programmierer aber nichts dafür
-
Original erstellt von <:)>:
**
standard ist 4 leerzeichen, sonnst würde es zu schnell über den bildschirm rand gehen. da kann der ordentliche programmierer aber nichts dafür**4 Leerzeichen? Bei Tabs hast du keine Leerzeichen. Du hast nur ne Breite, die normalerweise 8 ist.
-
ich meine eine breite die 4 leerzeichen entspricht und die ist, wenn ich mich nicht irre, standard mäßig 4.
-
standard mäßig 4.
-
mäßig 4
...hört sich wie ne Schulnote an! 
Diese Breite ist nicht Standardisiert.
Jede IDE hat da andere Voreinstellungen. Bei Dev-C++ ist es glaube ich eine Breite von 2. Der Windows-Editor macht Tabs so breit, wie 8 Leerzeichen. Ich habe bei der IDE, die ich nutze, eingestellt, dass er ein Tab durch 3 Leerzeichen ersetzen soll. Würde ich mit Tabs arbeiten, dann hätten sie ne Breite von 3.[ Dieser Beitrag wurde am 28.11.2002 um 22:32 Uhr von Gregor editiert. ]
-
Dann arbeite halt mit Tabs und mit Leerzeichen...
-
ordentliche ide bieten die funktion "tabs in leerzeichen umwandeln"
-
also ich benutzer immer eindeutige Funktions oder Variablennamen, zumindest meistens
(außer i und j, das benutz ich immer als iterator). Von der ungarischen Notation halte ich überhauptnichts, genauso wie vom großschreiben von Bezeichnern
ich schreibe die eigentlich immer klein. m_ als Präfix für Member Variablen nutze ich auch seltener, falls sich mal eine lokale Variable/Argument mit dem Namen eines Members überschneided, kann man dieser meistens leicht _ anhängen oder zur Not per this-><bez> oder <classe>::<bez> drauf zugreifen.Und ich versuche keine C Casts zu benutzen, sondern C++ Casts.
Als Dateiendung nehmen ich *.cc und *.hh, ich benutze 2 Leerzeichen (also lasse die Tabs durch 2 Leerzeichen ersetzen :))
-
Du schreibst Bezeichner nicht groß?
Dann kann man ja garnicht sowas machen:Window window;
Zuert fand ich tabs auch immer besser. Bis ich rausgefunden hab das man vim auch beibringen kann das er 3 Leerzeichen wie Tabs behandelt. Seitdem hab ich weniger Arbeit mit meinem Quellcode

-
Original erstellt von kingruedi:
kann man dieser meistens leicht _ anhängen oderDas ist ja auch sowas... ich weiß nicht wie die großen Geister auf diese Idee kamen. Was lese ich als erstes bei einem Bezeichner? Das erste Zeichen. Und wo hängen die Jungs die Markierung dran? Am Ende.
Verstehe ich nicht, leuchtet mir nicht ein. Am Anfang macht in meinen Augen Sinn, aber das am Ende? Von jeher war es üblich mit Prefixes in Bezeichner zu arbeiten, wenn man irgendeine Symbolik in die Namen einführen wollte. Höchste Priorität oder Namenszugehörigkeit stand immer im Prefix. Und nun wird plötzlich ein Postfix im Namen eingeführt.
-
das _ am ende erkennt man doch bevor man den ersten buchstaben gelessen hat,
-
Ehrlich? Beim Buch lese ich ja auch den Schluß zuerst... aber bei den Bezeichnern...
-
Original erstellt von Marc++us:
**Was lese ich als erstes bei einem Bezeichner? Das erste Zeichen. Und wo hängen die Jungs die Markierung dran? Am Ende.
**Man macht es hinten dran, _damit_ man den Text so lesen kann, wie man gerne geschrieben hätte, nämlich ohne Kennzeichung. Man _soll_ es also 'überlesen'. Konstruktionen wie Class::member oder this->member machen mehr Arbeit als member_.
IMHO.DrGreenthumb: Wieso denn?
// C++ struct foo {}; void bar () { foo foo; }Ist legal.
Gregor: Jap, ich hab' mich wiederholt, hab das allerdings mit noch 2 Minuten vor deinem Post bearbeitet :).
-
// C++ struct foo {}; void bar () { foo foo; }Ist legal.
Ich bin erschüttert...Ok, das geht tatsächlich. Aber ich schreib meine Klassen trotzdem lieber groß

-
@Marc++us: Was meinst du eigentlich zu der Tab und Leerzeichengeschichte? Was benutzt du?

-
Original erstellt von Marc++us:
Ehrlich? Beim Buch lese ich ja auch den Schluß zuerst... aber bei den Bezeichnern...kuckt man sich nicht automatisch erst das gesamt bild des wortes an?
-
Original erstellt von <Meinungsfrage>:
@Marc++us: Was meinst du eigentlich zu der Tab und Leerzeichengeschichte? Was benutzt du?
3 Blanks statt Tab. Mein Vorteil ist, daß ich das verbindlich für alle in der Firma festlegen kann.

Aber das ist eigentlich ein Nicht-Thema, das mit Programmierkonventionen gar nichts zu tun hat. Eine Lizenz z.B. für den frei konfigurierbaren SourceStyler kostet 300$ und formatiert jeden Quelltext (einschließlich der {}-Debatte) so um wie gewünscht. Formatierungen sind eigentlich kein wesentlicher Inhalt für eine Programmierkonvention.
Solche Themen wie Namensgebung halte ich für wichtiger.