C#定义常量的五种常用方法

 更新时间:2025年11月28日 09:25:42   作者:代码掌控者  
作为一名 C# 程序员,常量就像我们代码中的小伙伴,时刻陪伴着我们,在 C# 中,定义常量有几种简单而有效的方法,今天,我想和大家分享 5 种常用的常量定义方式,需要的朋友可以参考下

前言

嗨,大家好!

作为一名 C# 程序员,常量就像我们代码中的小伙伴,时刻陪伴着我们!

在 C# 中,定义常量有几种简单而有效的方法。

今天,我想和大家分享 5 种常用的常量定义方式,为你的编程之旅增添一些乐趣!

1. 使用 const 关键字

const 关键字用于定义编译时常量,一旦定义,常量的值不能更改。

public class Example
{
    public const int MaxValue = 100;
    public const string WelcomeMessage = "Hello, World!";
}

2. 使用 readonly 关键字

readonly 修饰符用于定义运行时常量,它的值可以在声明时或构造函数中设置,但在其他地方不能更改。

public class Example
{
    public readonly int num = 100;
    
    public Example()
    {
        num = 200;  
    }
}

3. 使用enum枚举

通过定义枚举,可以创建一组相关的常量值,通常用于整型常量。

public enum Days
{
    Sunday,
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday
}

4. 使用 static 字段

static 字段虽然不是严格意义上的常量,但在实际运用中通常也用作可共享的类级别常量

public class Example
{
    public static int StaticValue = 42;
}

static 还可以结合 readonly,创建一个更灵活的类级别的常量。

public class Example
{
    public static readonly string Url;

    static Example()
    {
        Url = "https://www.example.com";
    }
}

5. 使用 init 仅设置属性

这是 C# 9.0+ 引入的一个新关键字,可以让类型对象的属性只能在对象初始化时设置,之后不能再修改,虽然不是严格意义上的常量,但也有常量的特点

public class Person
{
    public string Name { get; init; }
    public int Age { get; init; }

    public Person()
    {
        // 可以在这里初始化 init 属性
        Name = "Unknown";
        Age = 0;
    }
}

// 使用 init 属性
var person = new Person { Name = "Jacky", Age = 30 };
// person.Name = "Tom"; // 这行代码会导致编译错误

总结

总结一下:

  • const:适用于固定值且不需要在运行时计算的常量
  • readonly:适用于在运行时需要初始化,或值依赖于某些条件的常量
  • enum:用于一组相关的固定整型常量
  • static:虽然不是严格意义上的常量,但实践中通常也用作可共享的类级别常量
  • init:虽然不是严格意义上的常量,但也有常量的特点,适合增强对象的不可变性,同时保持灵活性

到此这篇关于C#定义常量的五种常用方法的文章就介绍到这了,更多相关C#定义常量的方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#模拟实现鼠标自动点击与消息发送功能

    C#模拟实现鼠标自动点击与消息发送功能

    这篇文章主要为大家详细介绍了C#如何利用windows api来模拟实现鼠标点击、右击、双击以及发送文本功能,文中的示例代码讲解详细,感兴趣的可以了解一下
    2022-08-08
  • C#中Winfrom默认输入法的设置方法

    C#中Winfrom默认输入法的设置方法

    这篇文章主要介绍了C#中Winfrom默认输入法的设置方法,以实例形式较为详细的分析了C#中输入法设置的相关技巧,需要的朋友可以参考下
    2015-05-05
  • C#实现闪动托盘图标效果的方法

    C#实现闪动托盘图标效果的方法

    这篇文章主要介绍了C#实现闪动托盘图标效果的方法,涉及C# ImageList控件的使用技巧,需要的朋友可以参考下
    2016-06-06
  • C#中Datetimepicker出现问题的解决方法

    C#中Datetimepicker出现问题的解决方法

    这篇文章主要给大家介绍了关于C#中Datetimepicker出现问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • C#中FTP常用操作的示例代码

    C#中FTP常用操作的示例代码

    这篇文章主要为大家详细介绍了C#中FTP常用操作的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以跟随小编一起学习一下
    2024-04-04
  • 详解C#如何实现读写ini文件

    详解C#如何实现读写ini文件

    .ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管windows的各项配置。本文将介绍C#读写ini文件的方法,需要的可以参考一下
    2022-01-01
  • 使用linq to xml修改app.config示例(linq读取xml)

    使用linq to xml修改app.config示例(linq读取xml)

    这篇文章主要介绍了使用linq to xml修改app.config示例,需要的朋友可以参考下
    2014-02-02
  • C#读取或设置ScrollLock状态的方法

    C#读取或设置ScrollLock状态的方法

    这篇文章主要介绍了C#读取或设置ScrollLock状态的方法,涉及C#操作ScrollLock滚动状态的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C#难点逐个击破(8):可空类型System.Nullable

    C#难点逐个击破(8):可空类型System.Nullable

    null值用来表示数据类型未被赋予任何值,它是一种引用类型;void表示没有类型,或者说是没有任何值。null与void的区别可以认为void是根本没有,而null是一个空箱子,里面什么都没有。
    2010-02-02
  • C#实现向指定文本文件添加内容的方法

    C#实现向指定文本文件添加内容的方法

    这篇文章主要介绍了C#实现向指定文本文件添加内容的方法,涉及C#操作文本文件的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04

最新评论