Oppure

Loading
13/08/11 13:07
Salve a tutti,
qualcuno è in grado di spiegarmi perché il Framework non usa valori unsigned?

Perché per operazioni dove non sono accetti numeri negativi si trova sempre un parametro Int32 o Int64? Questo procedimento è molto più scomodo, perché implica un controllo sul valore ed il lancio di una ArgumentOutOfRangeException.

L'unica cosa che mi è venuta in mente è che l'abbiano fatto per mantenera una certa compatibilità con vecchie API :noway:

EDIT
Ho trovato una discussione interessante...
stackoverflow.com/questions/3095805/…
Effettivamente non avevo pensato che ci potessero essere problemi di compatibilità e che UInt32 potesse non essere CLS-compilant.

Ma andando per esclusione, il linguaggio .NET che non supporta gli unsigned è solo il JScript?
Vale davvero la pena, per me sviluppatore, sprecare tempo e risorse con i signed solo per rendere una mia DLL compatibile con quell'obrobrio di scripting? :_doubt:
Ultima modifica effettuata da 13/08/11 13:22
13/08/11 18:21
pierotofy
the vast majority of programming is done with signed types. Whenever you switch to unsigned types you force a mental model switch (and an ugly cast). In the worst cast you build up a whole parallel world of APIs that take unsigned types. The value of avoiding the “< 0” check is not worth the inclusion of generics in the CLS.


blogs.msdn.com/b/brada/archive/2003/09/02/…

Non sprechi risorse facendo un controllo < 0. Siamo nel 2011, non nel 1970.
Il mio blog: piero.dev