美文网首页
iOS关于全局变量和静态关键字的定义

iOS关于全局变量和静态关键字的定义

作者: 福尔摩罗 | 来源:发表于2018-11-22 10:30 被阅读0次

要点
1.不要使用预处理指令定义常量,这样做定义出来的常量不含信息类型,编译器只是会在编译前据此执行查找与替换操作。即使有人重新定义了常量值,编译器也不会产生警告信息,浙江导致应用程序中的常量值不一致。

2.在.m文件中使用static const 来定义 “只在编译单元内可见的常量(不想暴露给别的引用类文件的全局变量)”由于此类常量不会再全局符号表中,所以无须为期名称加前缀。(只在本文件中显示,即使文件被别的文件引用了,也不会暴露出去)。

static const NSString * str = @"静态关键字,只在本文件中使用,不会被修改且不会暴露给引用者";

3.在希望自己的属性暴露出去的时候 使用extern 关键字 在.h文件中声明,并在.m文件中实现赋值,
这种常量要出现在全局符号表中,所以其名称应加以区分,通常用与之相关的类名做前缀

.h文件中
#import <UIKit/UIKit.h>

extern NSString *const kBaseVCNotifiStr;

//所有Controller的基类
@interface QFTBaseViewController : QMUICommonViewController

@end
-----------------------------------------------------------------------

.m文件中
#import "QFTBaseViewController.h"


NSString *const kBaseVCNotifiStr = @"希望暴露给引用者的信息";

@interface QFTBaseViewController ()
@property (nonatomic, strong) UIButton *navButton;

@end

相关文章

  • 存储类型和一些关键字

    参考:C Storage ClassesiOS定义静态变量、静态常量、全局变量iOS开发——OC篇&常用关键字的使...

  • c++ static 关键字总结

    静态全局变量 在全局变量之间加上static关键字,就被定义为静态全局变量。 特点:在全局数据区分配内存 未初始化...

  • C/C++ 中 static 的用法

    C语言: 1、静态全局变量:1、在全局变量前加上 static 关键字,即为静态全局变量2、静态全局变量在程序的数...

  • iOS关于全局变量和静态关键字的定义

    要点1.不要使用预处理指令定义常量,这样做定义出来的常量不含信息类型,编译器只是会在编译前据此执行查找与替换操作。...

  • 2018-01-23

    Static关键字用法 C语言中面向过程 静态全局变量 静态全局变量的作用:1.静态全局变量的作用域:不能被其他文...

  • static关键字

    一、面向过程设计中的static 1、静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静...

  • Objective-C添加类属性

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

  • 语言基础(一)

    1.Static关键字的作用 (1)全局静态变量:在全局变量前面加static ,全局变量就变成全局静态变量 存...

  • BAT面试 基础篇(一)

    ● 说一下static关键字的作用 参考回答: 1. 全局静态变量 在全局变量前加上关键字static,全局变量就...

  • static关键字

    用途:static 关键字来定义静态方法和属性。static 也可用于定义静态变量以及后期静态绑定 1 notic...

网友评论

      本文标题:iOS关于全局变量和静态关键字的定义

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