美文网首页
全局变量和静态变量

全局变量和静态变量

作者: maniacRadish | 来源:发表于2016-06-02 17:04 被阅读36次

1> 修饰符
全局变量在声明源文件之外使用,需要extern引用一下;
静态变量使用static来修饰
2> 存储地址
两者都是存储在静态存储区,非堆栈上,它们与局部变量的存储分开
3> 生命周期
两者都是在程序编译或加载时由系统自动分配的,程序结束时消亡
4> 外部可访问性
全局变量在整个程序的任何地方均可访问,而静态变量相当于面向对象中的私有变量,他的可访问性只限定于声明它的那个源文件,即作用于仅局限于本文件中(除了成员变量,其他变量不能定义在@interface中,其他位置随意;即使声明位置在使用变量之后,也会被识别,除了声明放在@end之后)

相关文章

  • Objective-C添加类属性

    先回顾一下静态变量与全局变量的一些知识。 头文件中定义全局变量和静态变量的区别。 源文件中定义全局变量和静态变量的...

  • iOS 内存管理进阶

    1. 基础知识 可执行文件的内存结构 .bss区,未初始化的全局变量和静态变量 .data区,初始化的全局变量和静...

  • 静态变量、代码块、和静态方法的执行顺序

    转载自 静态变量、代码块、和静态方法的执行顺序以备学习 代码 执行结果 结论 静态变量是全局变量 静态方法在类加载...

  • 全局变量和静态变量

    1> 修饰符全局变量在声明源文件之外使用,需要extern引用一下;静态变量使用static来修饰2> 存储地址两...

  • 动态内存分配

    全局静态变量:存放全局变量和静态变量,空间由系统管理,程序执行时开辟空间,程序结束空间回收,在程序运行期间其空间一...

  • __block修饰符

    __block用于解决block内部不能修改auto变量值的问题__block不能修饰全局变量和静态变量?编译器会...

  • php全局变量和静态变量

    (1)全局变量:通过将关键字 GLOBAL 放在变量前该变量可以被确认为全局变量。 $a 变量在函数外定义,无法在...

  • block

    一篇文章看懂iOS代码块Block - 简书 在Block中可以访问局部变量 Block内访问全局变量和静态变量 ...

  • 全局与静态的博弈

    内存中的程序 只读部分 程序中的代码 程序中的常量 可读写部分 .data: 初始化了的全局变量和静态变量 .bs...

  • 关于内存五大分区

    BSS段:BSS段( bss segment )通常是指用来存放程序中未初始化的全局变量和静态变量的一块内存区域。...

网友评论

      本文标题:全局变量和静态变量

      本文链接:https://www.haomeiwen.com/subject/pwjkdttx.html