如何定义Visual C#中的常量,如C中的#define?

时间:2009-11-27 09:57:32

标签: c# constants

在C中你可以定义像这样的常量

#define NUMBER 9

因此,无论NUMBER出现在程序中,它都会替换为9.但Visual C#不会这样做。怎么做?

7 个答案:

答案 0 :(得分:61)

public const int NUMBER = 9;

你需要将它放在某个类的某个类中,其用法为ClassName.NUMBER

答案 1 :(得分:16)

你不能在C#中这样做。请改用const int

答案 2 :(得分:13)

在MSDN上查看How to: Define Constants in C#

  

在C#中#define预处理器   指令不能用于定义   通常的方式常数   用于C和C ++。

答案 3 :(得分:13)

static class Constants
{
    public const int MIN_LENGTH = 5;
    public const int MIN_WIDTH  = 5; 
    public const int MIN_HEIGHT = 6;
}

// elsewhere
public CBox()
{
    length = Constants.MIN_LENGTH; 
    width  = Constants.MIN_WIDTH; 
    height = Constants.MIN_HEIGHT;  
}

答案 4 :(得分:1)

用c语言: #define (例如#define counter 100)

汇编语言

equ (例如,计数器等于100)

c#语言中的

according to msdn refrence: 您使用#define来定义符号。当您使用符号作为传递给#if指令的表达式时,表达式将计算为true,如下例所示:

# define DEBUG

#define指令不能用于声明常量值,这通常在C和C ++中完成。 C#中的常量最好定义为类或结构的静态成员。如果你有几个这样的常量,考虑创建一个单独的"常数"持有他们的课程。

答案 5 :(得分:0)

在C#中,根据MSDN库,我们有" const"执行" #define"的工作的关键字其他语言的关键字。

" ...当编译器在C#源代码中遇到常量标识符(例如,几个月)时,它会将文字值直接替换为它生成的中间语言(IL)代码。" (https://msdn.microsoft.com/en-us/library/ms173119.aspx

在声明时初始化常量,因为没有更改它们。

public const int cMonths = 12;

答案 6 :(得分:0)

什么是“ Visual C#”?哪有这回事。只是C#或.NET C#:)

此外,Python的常量CONSTANT_NAME约定在C#中不是很常见。我们通常根据MSDN标准使用 CamelCase ,例如public const string ExtractedMagicString = "vs2019";

  

来源:Defining constants in C#