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#的技术就是先简单再难嘛,积少成多之后才会成长才会进步,我们要不断的学习不断的探索,才能有学习的动力,才会有学习的欲望,创作不易,点赞评论收藏关注,嘿嘿,不喜勿喷!!!!

相关推荐
weixin_499771555 分钟前
C++中的组合模式
开发语言·c++·算法
初级代码游戏6 分钟前
套路化编程 C# winform 自适应缩放布局
开发语言·c#·winform·自动布局·自动缩放
_waylau10 分钟前
鸿蒙架构师修炼之道-架构师的职责是什么?
开发语言·华为·harmonyos·鸿蒙
2的n次方_21 分钟前
CANN Ascend C 编程语言深度解析:异构并行架构、显式存储层级与指令级精细化控制机制
c语言·开发语言·架构
近津薪荼36 分钟前
dfs专题5——(二叉搜索树中第 K 小的元素)
c++·学习·算法·深度优先
打工的小王1 小时前
Spring Boot(三)Spring Boot整合SpringMVC
java·spring boot·后端
java干货1 小时前
为什么 “File 10“ 排在 “File 2“ 前面?解决文件名排序的终极算法:自然排序
开发语言·python·算法
_F_y1 小时前
C语言重点知识总结(含KMP详细讲解)
c语言·开发语言
毕设源码-郭学长1 小时前
【开题答辩全过程】以 基于python的二手房数据分析与可视化为例,包含答辩的问题和答案
开发语言·python·数据分析
敏叔V5871 小时前
AI智能体的工具学习进阶:零样本API理解与调用
人工智能·学习