C# const关键字学习

前言:

你居然不知道const关键字?今天在做项目的时候别人问我的,我确实不知道这个关键字,今天我们就来一起学习一下const关键字定义局部变量,这个关键字对于常数变量非常的友好的,可以提高程序的运行效率,因为它是在编译时的操作,所以我们必须要学习一下,这不就是提高效率的方法啊,创作不易,点赞关注评论收藏,你的点赞是我创作的动力,也是我学习的方向!!!谢谢啦!

const关键字的认识

使用 const 关键字来声明某个常量字段或常量局部变量。 常量字段和常量局部变量不是变量并且不能修改。 常量可以为数字布尔值字符串null 引用。 不要创建常量来表示你需要随时更改的信息。 例如,不要使用常量字段来存储服务的价格、产品版本号或公司的品牌名称。 这些值会随着时间发生变化;因为编译器会传播常量,所以必须重新编译通过库编译的其他代码以查看更改const(编译时常量),const在编译时将替换成具体的常量,这样如果在引用中同时使用了const和readonly两种值,则对readonly的再次改变将会改变设计的初衷,这是需要重新编译所更改的程序集,以重新引用新的常量值。const比readonly效率高,但失去了应用的灵活性。(readonly关键字下篇文章学)

使用效果展示

我们对const简单的测试一下,踩踩坑,踩了坑才能发现问题,我发现其实const就相当于C语言的宏定义

,初始化赋完值之后就不能改变了,在程序中就相当于一个常量,因为C#中是没有宏定义的,感觉const就是起到一个宏定义的作用。而我们在赋值时常量可以为数字布尔值字符串null

代码逻辑

js 复制代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Test929
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }
        class Test
        {
            int a;
            int b;
            int c;

            public int A { get => a; set => a = value; }
            public int B { get => b; set => b = value; }
            public int C { get => c; set => c = value; }
        }
        public int x = 1;
        public int y = 2;
        
        public const int num1 = 5;
        public const int num2 = num1 + 5;

        private void Form2_Load(object sender, EventArgs e)
        {    
            Console.WriteLine(x);
            Console.WriteLine(y);
            Console.WriteLine(num1);
            Console.WriteLine(num2);
           // const Test test = new Test();  
        }

    }
}

总结

这篇文章比较简单,只是简单的学习一下,对它有更多的认识,在有需求的时候最起码有路子,虽然很简单,但是也是可以学到东西的,我们学习了新的知识,对我们的知识储备及技术又有新的一点点的进步,C#的技术就是先简单再难嘛,积少成多之后才会成长才会进步,我们要不断的学习不断的探索,才能有学习的动力,才会有学习的欲望,创作不易,点赞评论收藏关注,嘿嘿,不喜勿喷!!!!

相关推荐
- 总有一天你会出现在我身边3 分钟前
windows版中间件启动
windows·中间件
武子康13 分钟前
大数据-189 Nginx JSON 日志接入 ELK:ZK+Kafka+Elasticsearch 7.3.0+Kibana 实战搭建
大数据·后端·elasticsearch
码海踏浪14 分钟前
JMeter 时间函数合集
开发语言·python
麦麦鸡腿堡15 分钟前
Java_反射暴破创建对象与访问类中的成员
java·开发语言
不会c嘎嘎15 分钟前
深入理解QT之信号和槽
开发语言·qt
SunnyDays101116 分钟前
Python 实现 PDF 文档压缩:完整指南
linux·开发语言·python
Cx330❀17 分钟前
《C++ 动态规划》第001-002题:第N个泰波拉契数,三步问题
开发语言·c++·算法·动态规划
陈橘又青17 分钟前
开创性的初创企业利用 Amazon SageMaker孵化器释放企业价值
人工智能·网络协议·学习·ai·编辑器
神仙别闹17 分钟前
基于Qt5(C++)+SQLite 开发的一个小巧精美的本地音乐播放器
开发语言·c++·qt
差点GDP19 分钟前
C语言常用编译命令和示例
c语言·开发语言