Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    [C#.NET] Variabili static nei thread

    ciao a tutti

    sapete dirmi se e' possibile dichiarare una variabile che si comporti in modo statico xo' associata al thread ke la contiene?

  2. #2
    Usa l'attributo ThreadStaticAttribute.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    grazie mille... e' proprio quello ke cercavo...

    sto imparando ora a usare c# e purtroppo ho appena scoperto ke nn posso dichiarare una variabile static interna ad una funzione... e' vero??

  4. #4
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,536
    Originariamente inviato da _AnDrEa_1483
    grazie mille... e' proprio quello ke cercavo...

    sto imparando ora a usare c# e purtroppo ho appena scoperto ke nn posso dichiarare una variabile static interna ad una funzione... e' vero??

    vero, la cosa non avrebbe neppure senso in quanto essendo creata all'interno di un metodo (quello che chiami funzione in vb in c# si chiama metodo) questa viene creata, utilizzata e e poi "distrutta" al termine della procedura (variabile locale), pero' puoi pilotarne una esterna!

  5. #5
    si certo... si potrebbe usare tranquillamente una variabile scatic comune a tutta la classe e nn solo al metodo... la differenza sta solo nella maggiore pulizia del codice... troppe variabili globali ti tirano matto...

    cmq grazie mille a tutti...

  6. #6
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,536
    sucuramente c'è un modo per farlo in maniera pulita, ma sei tu che vedi e gestisci il tuo cod. e a volte la pulizia e l'ottimizzazione del codice puo' passare anche da queste.


  7. #7
    L'uso di variabili statiche "sporca" il codice. Di solito conviene usare un campo della classe a cui appartiene il metodo.
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,536
    Originariamente inviato da MItaly
    L'uso di variabili statiche "sporca" il codice. Di solito conviene usare un campo della classe a cui appartiene il metodo.
    dipende da quello che vuoi fare, se devi midificare il campo di una classe da un altra classe e questo avvenisse nel metodo dell'ultima, non è conveniente utilizzare lo statico?

  9. #9
    Non capisco cosa c'entri la modifica di un campo con una variabile statica... puoi spiegarti meglio?
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it L'avatar di U235
    Registrato dal
    Mar 2006
    Messaggi
    1,536
    codice:
    namespace ClassLibrary1
    {
        public class Class1
        {
            public Class1()
            {
                ///....codice....
            }
            /// quando viene generato l'evento cambia la percentuale IVA della classe di calcolo
            public void ControlloCambioPercentualeIVA(Object sender, EXTERNAL.Feed feed)
            {
                Class2.IVA = feed.IVA;
            }
    
            public decimal CalcolaFattura()
            {
                ///....codice
                scorporo = Class2.ScorporoIVA(importo);
            }
        }
    
        public static class Class2
        {
            public static decimal IVA; //campo statico
    
            public static decimal ScorporoIVA(decimal importo)
            {
                if (IVA==null) IVA = 20.M;
                return ScorporoIVA(importo, IVA);
            }
    
            public static decimal ScorporoIVA(decimal importo, decimal PercentualeIVA)
            {
                return (importo / (1 + (PercentualeIVA / 100)));
            }
        }
    }
    immagina questo scenario.

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.