美文网首页iOS 开发将来跳槽用
iOS 关键字 const、extern、static、defi

iOS 关键字 const、extern、static、defi

作者: T_aa | 来源:发表于2016-06-29 09:22 被阅读63次

define

宏定义在开发中我们都经常用到...

最简单的理解是查找替换...

宏是预处理指令...

是先于编译器对源代码进行处理的指令...

不会对编译出错进行检查...

没有数据类型定义...

宏分为:对象宏和函数宏

对象宏:#define  PI    3.14159XXXXXXX....

函数宏:#define  Plus(a,b)     ((a)+(b))

#ifdef 如果已经定义了某个宏,则编译下面的代码...

#ifndef 如果没有定义某个宏,则不编译下面的代码...


const

是编译的时候处理...

编译出错会报错...

不能定义方法函数...

定义时候有明确的数据类型...

const 修饰他右边的变量.只读.不可变...

/** 可以改变指针的指向 但是不能改变指针指向的内容  不能改变值*/

NSString * const kHomeBottomTitle1 = @"kHomeBottomTitle1";

/** 可以改变指针指向的内容 但是不能改变指针的指向  值可变*/

const NSString * kHomeBottomTitle2 = @"kHomeBottomTitle2";

/** 指针的指向 指针指向的内容都不可改变          不能改变值*/

const NSString * const kHomeBottomTitle3 = @"kHomeBottomTitle3";


static

静态变量...

值可变...

一直在内存中 直到程序结束...

不同位置作用域不通...


extern

在头文件中.为函数或者变量声明作用范围的关键字...

.h中声明 

extern NSString * const  kHomeBottomTitle1;

.m中定义

NSString * const  kHomeBottomTitle1 = @"kHomeBottomTitle1";

相关文章

网友评论

    本文标题:iOS 关键字 const、extern、static、defi

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