这里介绍一下define.const.extern的用法.优劣以及要注意的地方. 1.define 宏define是定义一个变量,没有类型信息.define定义的常量在内存中有若干个拷贝. define可以定义常量,但是建议不要这么做,因为用define定以了的常量,其值可以改变. 用define定义方法和变量的例子: #define MAX(a,b) (a>b)?a:b #define MYVALUE 10 2.const const修饰的变量是不可变的. const定义常量从汇编的角度来看,…
将父类中的常量放到. m文件,子类就不会重复包含了.之后再.h文件中用extern NSSting * const ILScoreShowStartTime;// extern 用来声明变量和函数.const用来声明简单的常量,而#define可以声明复杂的常量,例如[NSString stringWith:@"dkdkdk"](const 不行)…
前言:本文主要梳理iOS中如何使用常量.enum.宏,以及各自的使用场景. 重要的事情首先说:在iOS开发中请尽量多使用const.enum来代替宏定义(#define):随着项目工程的逐渐增大,过多的宏定义还可能影响项目的编译速度. 宏定义大家应该都不陌生,使用起来非常简单,首先我们先来看一下宏定义跟const的区别: 1.宏在编译开始之前就会被替换,而const只是变量进行修饰; 2.宏可以定义一些函数方法,const不能 3.宏编译时只替换不做检查不报错,也就是说有重复定义问题.而cons…
http://www.cocoachina.com/ios/20160530/16483.html 本文投稿文章,作者:SuperMario_Nil(简书) 前言:本文主要梳理iOS中如何使用常量.enum.宏,以及各自的使用场景. 重要的事情首先说:在iOS开发中请尽量多使用const.enum来代替宏定义(#define):随着项目工程的逐渐增大,过多的宏定义还可能影响项目的编译速度. 宏定义大家应该都不陌生,使用起来非常简单,首先我们先来看一下宏定义跟const的区别: 1.宏在编译开始之…
const const意味着"只读",欲阻止一个变量被改变,可以使用const关键字 const仅仅用来修饰右边的变量(基本数据变量p,指针变量*p) define #define指令有三种用法: 第一种是定义标识,标识有效范围为整个程序,形如#define XXX,常与#if配合使用 第二种是定义常数,如#define max 100,则max代表100(这种情况下使用const定义常数更好,因为:const常量有数据类型,而宏常量没有数据类型.编译器可以对前者进行类型安全检查,而对…
声明全局变量使用的技术——摘自uC/OS-II中文版 以下是如何定义全局 变量.众所周知,全局变量应该是得到内存分配且可以被其他模块通过C 语言中extern 关键字调用的变量.因此,必须在 .C 和 .H 文件中定义.这种重复的定义很容易导致错误.以下讨论的方法只需用在头文件中定义一次.虽然有点不易懂,但用户一旦掌握,使用起来却很灵活.表1.2 中的定义出现在定义所有全局变量的.H 头文件中. 程序清单 L 1.2 定义全局宏.    #ifdef xxx_GLOBALS    #define…
A.概述      在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能      1.按钮点击后,显示为“已下载”,并且不可以再按      2.在屏幕中间弹出一个消息框,通知消息“xx已经被安装”,慢慢消失      3.消息框样式为圆角半透明       B.不使用代理模式,使用app空间组和主View之间的父子View关系 1.在主View中创建一个消息框   主View控制器:ViewController.m // 创建…
const extern static 终极指南 不管是从事哪种语言的开发工作,const extern static 这三个关键字的用法和原理都是我们必须明白的.本文将对此做出非常详细的讲解. const const是这三个中最简单的一个关键字.主要用于声明常量.常量和变量的样子没什么两样,只是前者的值是不可修改的. 举个例子: int const a; const int a; 这两条语句都把a声明为一个整数,它的值不能被修改,在这里,这两条语句是等价的,只是表现形式不同. 那么问题来了,既…
IOS基础学习-2: UIButton   UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedControl分段控件.UISlider滑块.UITextField文本字段控件.UIPageControl分页控件.这些控件的基类均是UIControl,而UIControl派生自UIView类,所以每个控件都有很多视图的特性,包括附着于其他视图的能力.所有控件都拥有一套共同的属性和方法. 具体视图关系如下…
静态局部变量 静态局部变量. 从称呼上我们可以看出,静态局部变量首先是一个局部变量,因此其只在定义它的函数内有效,冠以静态的头衔后,其生存期就被延长了,不会随着函数的返回而被撤销.我们可以这样来理解:静态局部变量就是在程序生存期间一直有效,但只能在定义它的函数中使用的一种变量. 静态局部变量的声明比较简单,在声明局部变量的时候,加上关键字static就可以了.下面是一个用局部静态变量计算阶乘的具体例子. #include “stdio.h” int fac(int n) { static int…