Membri di classe static o variabili globali ?

di il
3 risposte

Membri di classe static o variabili globali ?

Salve a tutti!!!

Come da titolo ho un dubbio su cosa utilizzare, più che altro mi piacerebbe conoscere il motivo dell'eventuale scelta.

Ringrazio anticipatamente chi vorrà rispondermi

3 Risposte

  • Re: Membri di classe static o variabili globali ?

    Ma la domanda da cosa scaturisce ?

    Le variabili globali sono una scelta pessima ma non è detto che, al loro posto, tu debba usare membri statici.
  • Re: Membri di classe static o variabili globali ?

    E' un po' filosofia ed un po' logica.

    Ad esempio:

    supponi di voler tenere traccia del numero di istanze di una classe: e' abbastanza ovvio che conviene utilizzare un membro statico per quella classe.

    Se non hai accesso alla classe, allora potrebbe essere sufficiente una variabile statica.

    Il principio da seguire e' sempre lo stesso: information hiding.

    Cioe' l'informazione va messa il piu' vicino possibile a dove serve e deve essere visbile solo a chi serve.

    Una variabile globale e' visibile da chiunque, e quindi chiunque la potrebbe utilizzare.
    Inoltre, essendo globale, potrebbe non essere evidente a chi effettivamente serva.
  • Re: Membri di classe static o variabili globali ?

    Grazie ad entrambi per le risposte!

    Per oregon:
    la domanda nasce dalla necessità di avere un array di puntatori a strutture, che una volta creato nel costruttore della classe, duri per l'intero programma e non solo per quell'istanza.

    Per migliorabile:
    in effetti all'inizio ho seguito più o meno quella logica, ma dato che volevo averne conferma, ho chiesto a chi ne capisce sicuramente più di me
Devi accedere o registrarti per scrivere nel forum
3 risposte