Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    campo statico, dove si trova in memoria?

    una delucidazione:

    se io dichiaro una classe e al suo interno dichiaro un campo statico, tale campo (se non erro) sarà condiviso tra tutte le istanze create da questa classe.

    il punto è che se ogni istanza risiede in memoria nel HEAP e ognuna avrà la sua allocazione, il campo condiviso dove risiede? in un altra locazione sempre nel HEAP, o da qualche altra parte?

    Lo so sembra una domanda un pò scema ma è un dubbio che vorrei risolvere...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466

    Moderazione

    Linguaggio?

    Letto il Regolamento?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    scusa lho dimenticato

    C#

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466
    Direi che si trova sempre nell'heap, anche perché puoi considerare una classe come un'istanza del tipo che la definisce, tutto sommato.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5

    Re: campo statico, dove si trova in memoria?

    Originariamente inviato da andrestu
    una delucidazione:

    se io dichiaro una classe e al suo interno dichiaro un campo statico, tale campo (se non erro) sarà condiviso tra tutte le istanze create da questa classe.

    il punto è che se ogni istanza risiede in memoria nel HEAP e ognuna avrà la sua allocazione, il campo condiviso dove risiede? in un altra locazione sempre nel HEAP, o da qualche altra parte?

    Lo so sembra una domanda un pò scema ma è un dubbio che vorrei risolvere...
    I campi statici non appartengono alle istanze della classe, ma alla Classe
    infatti non ti riferisci ad essi tramite oggettoIstanziato.CampoStatico ma con
    Classe.CampoStatico

    La prima volta che si accede al campo statico viene quindi creato un oggetto apposito
    che ha il suo spazio di memoria personale.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.