Newsgroup: it.comp.lang.c++
Titolo: [standard] Parentesi graffe

Ciao raga,
secondo voi qual'č il modo piů "giusto" di utilizzare le parentesi graffe
durante la stesura del codice:
if {
...
}
oppure
if
{
...
}
Un saluto,

 }
ma a lavoro mi tocca usare questa:
if ( condition )
{
     /* code */
}
else
{
     /* code */
}
ok, uno sfogo...
Tommy

 [CUT]
Non c'e' nessun metodo migliore, e' totalmente a discrezione di chi 
scrive codice. Fintanto che uno stesso blocco di codice (programma? 
sistema operativo?) rimane coerente come convenzioni di codice, e questa 
convenzione non e' proprio assurda, tutto va bene.
Detto questo, poi, in giro per la rete trovi delle convenzioni piu' o 
meno largamente adottate - alcune delle quali sono gestite da indent 
(man 1 indent, oppure 
http://www.gnu.org/software/indent/indent.html
).
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://mbellett.web.cs.unibo.it/
Jabber: RedGlow  - Linux registered user 299762 @ machine 213003



č una questione di stile.
io personalmente preferisco il secondo tipo: lo considero piů
leggibile.

 }
perche' mi pare piu' leggibile, nel senso che "ad occhio" vedo il blocco 
di codice racchiuso dalle graffe, perche' individuo subito le due graffe 
accoppiate, allineate in verticale sulla stessa colonna.
Credo che lo stile 1 sia da preferire per un codice "piu' compatto"; 
invece, lo stile 2 mi da' l'idea di un codice piu' "arioso". :)
...e' un po' come l'uso delle parentesi tonde, o degli operatori... 
alcuni hanno uno stile tipo:
a+(b*3-c)
altri peferiscono invece:
a + ( b * 3 - c )
E' tutto soggettivo... Usa quello che ti piace di piu'!
:-)
Ciao
Dan

 E' tutto soggettivo... Usa quello che ti piace di piu'!
Nella mia ditta, fino a poco tempo fa, c'era una cosa assurda:
if ( 3 == var)
{
}
invece di:
if(var==3){
}
mettere la costante prima per renderla piu' visibile !!!
Blah! Schifo!
Fortuna hanno deciso di non continuare cosi'.
Tommy

 Fortuna hanno deciso di non continuare cosi'.
A parte che anche io preferisco:
if(var==3)
{
}
perché rende (opinione, come già detto, puramente
personale) molto più leggibile il codice , il fatto di usare
if(3==var) invece di if(var==3) ha un altro senso, non certo
quello di "rendere più visibile la costante". 
Così facendo l'errore di usare un'assegnazione al posto di un
confronto viene segnalato in modo inequivocabile dal
compilatore: se io scrivo if(3=var), per ovvi motivi la
compilazione si interrompe, segnalando l'errore, se io scrivo
if(var=3) al massimo ricevo un warning (a seconda delle opzioni
di compilazione che uso). Visto che è un errore, per molte
persone, abbastanza frequente, si usa questo "metodo" per
evitarlo. Metodo che, per quanto brutto, funziona a dovere se
var è un tipo predefinito, ma che potrebbe creare qualche
problema se var non è un tipo predefinito.
Ciao.

 Blah! Schifo!
Anche io preferisco if ( var == 3 ) :-)
Cmq, il motivo credo sia quello che ha detto Dino...

 problema se var non è un tipo predefinito.
Ciao,
Tommy

Blah! Schifo!
Che sia quello il motivo non lo so, ma di sicuro si evitano errori
tipo
if ( var = 3) 
{
... 
}
che a volte succedono.

 
Non mi sembra tanto assurda, specialmente nel caso:
if (-1 == funzionecolnomemoltolungo(etantiparametri,altro,abc))
Quando la funzione usa ad esempio il valore di ritorno -1 per indicare 
un errore.
Per quanto riguarda la domanda originale prefersico lo stile:
if (...)
{
	//
}
else
{
	//
}
anche in Java, nonostante lì la convenzione più usata sia:
if (...) {
	//
}
else {
	//
}