Oppure

Loading
27/02/09 10:28
gigisoft
Postato originariamente da skip:

aspe....è perche no? ki me lo vieta?

E' buona norma di programmazione inserire la definizione di una classe in un file header anche se non è indispensabile. Tutte le implementazioni dei metodi della classe andranno, invece, inseriti nel file con estensione cpp.

se inserisco le direttive descritte prima nn succede nulla, e le variabili nell'header vengono definite una volta sola


in teoria si, e probabilmente il compilatore non ti dice niente, ma per una questione di ordine e' bene avere negli header solo le definizioni ( tipi, classi, costanti, ecc..., al limite variabili statiche ), ossia tutto cio' che presumibilmente deve essere condiviso da piu' file, mentre tutte le dichiarazioni di variabili e le implementazioni e' bene che stiano nei file cpp.
Anche perche' si potrebbe generare confusione; se per esempio dichiaro una variabile x in un header, che poi includo separatamente in due file cpp dello stesso progetto, con l'intenzione di avere un'unica variabile x condivisa tra i due file, mi ritrovero' invece a replicare localmente ai due file la dichiarazione di x, per cui mi ritrovero' con due variabili x ognuna locale per uno dei due file.
Spero di essere stato abbastanza chiaro.

Luigi
Ultima modifica effettuata da gigisoft 27/02/09 10:30
aaa