修饰符const,static与readonly

时间:2023-09-30 13:11:26

在c语言中,存储区可以分成代码区,全局区(用于存放全局变量和静态变量),常量区(用户存放常量),栈,堆。

首先介绍const,const是常量的标志,表示变量不可被修改。const变量,申明的时候就必须初始化,是在程序编译时便确定好,之后不会发生变化,类中若有const类型的变量,则可以不用通过实例化直接通过类名来调用他,例如className.constVar,这点与static类型类似。所以const类型是隐式的static类型。

接着是readonly类型,可在申明或构造函数时初始化,这点就可以说明,readonly类型的变量是可变的,可以通过新的实例化调用构造函数来改变他的值。readonly类型的变量是在运行时才确定好的。

然后是static类型,需呀记住一点,类中静态类型的变量或函数,可以不用经过实例化,直接通过类名来调用他。