Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908

    [C#]Struct e classi, differenze

    Da quanto ho capito, tra strutture e classi, la principale differenza consiste nel metodo di memorizzazione, ovvero, gli struct sono tipi di valore, con tutte le conseguenze del caso, e le classi sono tipi di riferimento, con i pregi del caso.

    I tipi strutturati non supportano l'ereditarietà
    A differenza delle classi, è possibile creare istanze senza utilizzare l'operatore new

    Il libro dice che i tipi strutturati sono sostanzialmente come delle classi "in piccolo" ma che vengono utilizzate per tenere insieme dei dati, questo è quello che non mi è proprio chiaro!


    P.S. Gli struct, da quanto ho capito, verranno usati molto sporadicamente, date le loro limitazioni, si farà sempre più ricorso alle classi, giusto?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  2. #2

    Re: [C#]Struct e classi, differenze

    Originariamente inviato da dwb
    Il libro dice che i tipi strutturati sono sostanzialmente come delle classi "in piccolo" ma che vengono utilizzate per tenere insieme dei dati, questo è quello che non mi è proprio chiaro!
    In che senso non ti è chiaro?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Il fatto di "tenere insieme dei dati", intende che gli struct sono tipi di valore al contrario delle classi che sono tipi di riferimento?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  4. #4
    No, sia le classi che le struct "tengono insieme i dati", semplicemente le struct sono allocate sullo stack mentre le classi nell'heap, e quindi queste ultime vengono referenziate solo tramite puntatori (per questo sono dei reference type).
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Ok, perfetto!
    Una domandina: hai qualche link in ita da consigliarmi che spieghi in modo approfondito heap e stack e che ne illustri le differenze?
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  6. #6
    In italiano no, in inglese c'è questo interessante articolo (parla di C# ma i concetti si applicano anche a VB.NET): http://www.c-sharpcorner.com/UploadF...5-413b6d348b91.
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Originariamente inviato da MItaly
    In italiano no, in inglese c'è questo interessante articolo (parla di C# ma i concetti si applicano anche a VB.NET): http://www.c-sharpcorner.com/UploadF...5-413b6d348b91.
    Ok, tnk!
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

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.