簡體   English   中英

有什么辦法在C#中將'Double'或'double'轉換為'const Double'或'const double'?

[英]Is there any way to convert 'Double' or 'double' to 'const Double' or 'const double' in C#?

我的問題類似於從Lua初始化的Const double,但我在問這個問題

Double W1 = -21.0;
const Double X = (const Double) W1;

有沒有辦法做到這一點。

之間有什么區別:

    double Y;
    Double Y;

有什么辦法嗎?

不是因為在編譯時必須知道常量值,所以您不能將其分配給普通變量

和之間有什么區別:Double Y; 和Double Y;

絕對沒有區別,第一個是實際類型的別名。

如果您希望充當常量的符號是一個字段,則可以使用readonly修飾符而不是常量。 這將允許您在字段初始化程序或(靜態/非靜態)構造函數中為符號分配值。

MSDN

readonly關鍵字與const關鍵字不同。 const字段只能在該字段的聲明中初始化。 只讀字段可以在聲明中或在構造函數中初始化。 因此,取決於使用的構造函數,只讀字段可以具有不同的值。 同樣,盡管const字段是編譯時常量,但可以將readonly字段用於運行時常量,如下所示:public static readonly uint l1 =(uint)DateTime.Now.Ticks;

例:

class A
{
    readonly double d;

    public A()
    {
        double w = -21.0;
        d = w;
    }
}

暫無
暫無

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

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