簡體   English   中英

在c#中是十進制和十進制不同?

[英]In c# are Decimal and decimal different?

在c#中如果我使用decimal (小寫'd'),IDE會以深藍色顯示(如int )。 如果我使用Decimal (大寫'd'),則IDE將其顯示為teal(類似於類名)。 在這兩種情況下,工具提示都是struct System.Decimal

有什么區別嗎? 是一個“首選”?

不; 相同。 decimal定義System.Decimal的別名,並且通常是首選,除了在公共方法名稱中,您應該使用正確的名稱( ReadDecimal等) - 因為您的調用者可能不是C#。 這在intReadInt32等中更為明顯。

肯定沒有Java風格的拳擊差異。

(當然,如果你做一些像聲明一個更完全不同的更多命名空間局部Decimal東西,那么就會差異,但那會很愚蠢)。

同樣的事情,Decimal是.Net類型,decimal是c#關鍵字。

System.Decimal它是.NET Framework類型, decimal是C#語言中的別名

它們都在IL中編譯為System.Decimal ,因此沒有區別。

關於intSystem.Int32stringSystem.String等完全相同。

decimal是Decimal的別名。 他們是一樣的東西。

深藍色用於語言關鍵字,藍綠色用於類型。 decimal的情況下,它是表示類型別名的關鍵字。

decimal是一個關鍵字,始終引用基類庫中定義的struct System.Decimal Decimal通常意味着與大多數人using System;相同的東西using System; 在他們的源代碼之上。 但是,嚴格地說,那些不相同(你不能盲目地找到並替換它們):

 namespace Test {
    class Decimal { }
 }

 // File2.cs
 using Test;
 class DecimalIsNotdecimal {
      void Method(decimal d) { ... }
      void Method(Decimal d) { ... } // works!
 }

不,它們只是捷徑。

如果將鼠標懸停在小數上,您將看到System.Decimal。 與int和System.Int32,object和System.Object,string和System.String,double和System.Double一樣

我更喜歡小數和字符串,但我真的認為它是個人的

不,他們是一回事。 一個被着色為關鍵字(十進制),另一個被着色為類型(十進制)。 關鍵字只是該類型的別名。

這是同一件事。 'deciaml'是System.Decimal的c#關鍵字。

這適用於其他類型,如字符串和字符串等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM