2008-12-04 14 views

Odpowiedz

11

decimal nie jest tu sam; DateTime, TimeSpan, Guid itd. Są również niestandardowymi typami. Sądzę, że głównym powodem jest to, że nie mapują one na prymitywy CPU. float (IEEE 754), int itd. Są dość wszechobecne, ale decimal jest dostosowywany do .NET.

To naprawdę tylko powoduje problem, jeśli chcesz porozmawiać z operatorami bezpośrednio poprzez odbicie (ponieważ nie istnieją one w int itp.). Nie mogę wymyślić żadnych innych scenariuszy, w których zauważysz różnicę.

(faktycznie, nadal istnieją kodowanym etc do reprezentowania innych - są one po prostu brakuje większość tego, co można oczekiwać, aby być w im, takich jak operatorzy)

+1

myślę, że chodzi o to, że dziesiętnego jest jedynym typem, który staje się jego własne słowa kluczowego w C#, ale nie jest traktowany specjalnie przez CLR. –

Powiązane problemy