OC关键字const

本文主要探讨了OC中const关键字的使用,特别是在堆内存区的读写特性。const关键字在编译阶段进行检查,提供常量安全性,但无法替代函数或方法。与宏符号相比,const在编译时刻进行检查,能避免某些错误,但过多的宏可能导致编译时间增加。const只能修饰声明时的右侧变量,确保其不可被重新赋值。
摘要由CSDN通过智能技术生成

常量非常量主要分析点在于堆内存区的读写特性。
底层clang编译器编译机制作用下,不推荐将字符串常量抽像成宏符号。
宏符号 与 字符串常量 比较:

1.编译时刻:宏符号是预编译(正式编译之前先替换处理),const是编译阶段检查。
2.编译阶段检查:宏符号不做检查,不会报宏符号替换的编译错误,只是单纯的替换,const会进行编译检查,会在编译阶段报语法错误。
3.宏好处:某些函数,方法可以通过宏符号替换。 const常量堆内存区不能代替函数、方法。
4.宏坏处:使用大量宏符号,每次都需要大量的预编译时间作重新替换,使得整个编译过程耗时更久。
const介绍:
const关键字仅用于修饰定义声明指令中右边的声明字段名

  • (void)constUsingStyle {
    //字段名称栈器皿持有的堆内存区默认模式可读可写(远程访问读取/远程访问写入修改(二次赋值))
    //基本数据类型字段名直接在栈层级写入修改
    int a = 1;
    a = 20;

      //关键字const用法:1.修饰基本类型字段名称栈器皿(只读/声明时初值) 2.
    

    // const int b = 20;//只读特性(不支持远程访问写入修改(二次赋值))
    // b = 1;

      //const:修饰*指针变量p,带*的变量,就是指针变量.
      //基本数据类型直接声明字段名(普通字段名称)写入内容;
      int const b = 20;//只读特性
      //基本数据类型补充*指针声明出带有基本数据类型*指针风格的指针型字段名
      //备注:基本数据类型直接声明字段名不带*标志(int const b的声明效果和co
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HaiJunYa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值