Guía de estilo de programación en C++ estructurado
Guía de estilo de programación en C++ estructurado
Guía de estilo de programación en C++ estructurado
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
3.7 Declaración <strong>de</strong> variables<br />
Se <strong>de</strong>be colocar cada variable <strong>en</strong> una línea, incluso si<strong>en</strong>do <strong>de</strong>l mismo tipo.<br />
int x, y; // Es necesaria una segunda mirada para fijarse <strong>en</strong> 'y'<br />
int main()<br />
{<br />
int x;<br />
int y;<br />
char c;<br />
char toret[128];<br />
}<br />
// más cosas ...<br />
return 0;<br />
C permite minimizar muchísimo ciertas expresiones. Por ejemplo, el sigui<strong>en</strong>te bucle copiaría<br />
una ca<strong>de</strong>na <strong>de</strong> caracteres <strong>de</strong> C (un vector <strong>de</strong> char), <strong>en</strong> otra <strong>de</strong> <strong>de</strong>stino:<br />
void copiaCa<strong>de</strong>na(char cadDestino[], const char cadOrig<strong>en</strong>[])<br />
{<br />
int i = 0;<br />
while( cadDestino[ i ] = cadOrig<strong>en</strong>[ i++ ] );<br />
}<br />
Esto es bu<strong>en</strong>o <strong>en</strong> cuanto a espaciado vertical, <strong>de</strong>s<strong>de</strong> luego, pero <strong>de</strong>be valorarse cuándo el<br />
ahorro <strong>de</strong> espaciado merma la legibilidad <strong>de</strong>l código.<br />
void copiaCa<strong>de</strong>na(char cadDestino[], const char cadOrig<strong>en</strong>[])<br />
{<br />
int i = 0;<br />
for(; cadOrig<strong>en</strong>[ i ] != 0; ++i) {<br />
cadDestino[ i ] = cadOrig<strong>en</strong>[ i ];<br />
}<br />
}<br />
La anterior función realiza la misma tarea que la pre<strong>de</strong>cesora. Sin embargo, está<br />
perfectam<strong>en</strong>te claro cuándo el bucle termina (al llegar a la marca <strong>de</strong> fin <strong>de</strong> ca<strong>de</strong>na <strong>de</strong> la ca<strong>de</strong>na <strong>de</strong><br />
orig<strong>en</strong>), cuándo se hace explícitam<strong>en</strong>te una copia y también cuándo, <strong>de</strong>spués, se increm<strong>en</strong>tan ambos<br />
contadores. Es una función que se pue<strong>de</strong> compr<strong>en</strong><strong>de</strong>r <strong>de</strong> un vistazo, mi<strong>en</strong>tras que la anterior, aún<br />
para un programador con experi<strong>en</strong>cia, supondrá invertir unos cuantos segundos. Finalm<strong>en</strong>te, la<br />
calidad <strong>de</strong>l código máquina g<strong>en</strong>erada es la misma <strong>en</strong> ambos casos, si bi<strong>en</strong> es cierto que el primer<br />
ejemplo podría g<strong>en</strong>erar, según el compilador, un número <strong>de</strong> instrucciones máquina algo m<strong>en</strong>or.<br />
4 Com<strong>en</strong>tarios<br />
Un com<strong>en</strong>tario <strong>de</strong>be ser siempre clarificador, útil, y, <strong>en</strong> cambio, cuanto más corto mejor. En<br />
particular, <strong>de</strong>be cuidarse <strong>en</strong> no insultar la intelig<strong>en</strong>cia <strong>de</strong>l lector <strong>en</strong> <strong>de</strong>terminadas ocasiones,<br />
com<strong>en</strong>tando secu<strong>en</strong>cias <strong>de</strong> código obvias y <strong>de</strong>sesperarlo al <strong>en</strong>contrarse con construcciones<br />
complejas que no ti<strong>en</strong><strong>en</strong> ningún com<strong>en</strong>tario.