美文网首页
iOS开发中内联函数(UIKIT_STATIC_INLINE)的

iOS开发中内联函数(UIKIT_STATIC_INLINE)的

作者: OnlyFunny | 来源:发表于2018-08-07 15:17 被阅读0次

内联函数是一种小型函数,是以空间换效率的函数,功能较简单,即函数内部没有循环、开关语句等,内联函数的主要作用是在使用中取代宏定义的存在,它与宏定义的主要区别是它会进行类型检查.

简单源码
inline int foo (int a, int b) {
    return a + b;
}

inline是内联函数的关键字,表明后面的函数是一个内联函数,内联函数是c++的语法,所以函数按照c++函数的形式;

在iOS中可以这样使用
UIKIT_STATIC_INLINE CGRect CGFitRectMake(CGFloat x, CGFloat y , CGFloat width , CGFloat height){
    CGFloat scale = [UIScreen mainScreen].bounds.size.width/375;
    CGRect frame;
    frame.origin.x = x * scale;
    frame.origin.y = y * scale;
    frame.size.width = width * scale;
    frame.size.height = height * scale;
    return frame;
}

使用

常见使用定义以及使用方法,因为内联函数可以看成另一种形式的宏定义文件

  • 定义一个.h文件
  • 引入uikit头文件 #import<UIKit/UIKit.h>
  • 定义函数
例子
McGeometric.h

#import <UIKit/UIKit.h>

UIKIT_STATIC_INLINE CGRect CGFitRectMake(CGFloat x, CGFloat y , CGFloat width , CGFloat height){
    CGFloat scale = [UIScreen mainScreen].bounds.size.width/375;
    CGRect frame;
    frame.origin.x = x * scale;
    frame.origin.y = y * scale;
    frame.size.width = width * scale;
    frame.size.height = height * scale;
    return frame;
}

UIKIT_STATIC_INLINE NSString* JoinMuiltString(NSString * a,...){
NSMutableString *temString = [[NSMutableString alloc] initWithString:a];
    va_list ap;
    va_start(ap, a);
    while (1) {
       NSString * b = va_arg(ap, NSString*);
       if (b == nil) {
          break;
        }
       NSLog(@"==%@",b);
       [temString appendString:b];
    }
    va_end(ap);
    return temString;
}

.......

相关文章

  • iOS开发中内联函数(UIKIT_STATIC_INLINE)的

    内联函数是一种小型函数,是以空间换效率的函数,功能较简单,即函数内部没有循环、开关语句等,内联函数的主要作用是在使...

  • iOS开发中的内联函数

    1、内联函数 内联函数(又被称为在线函数或编译时期展开函数)是指在用inline修饰的函数(这里指的是C++或者C...

  • ios 内联函数,与宏的区别以及注意事项

    ios 中内联函数例子有: @property(nonatomic)UIEdgeInsetsscrollIndic...

  • iOS-inline内联函数

    iOS-inline内联函数

  • iOS开发之内联函数

    iOS 开发内联函数 在.pch进行声明(有参数无返回值)1 调用在你需要的地方进行调用,和宏定义调用一致 例如 ...

  • 内联函数(inline修饰的函数)

    内联函数 iOS开发同学经常会在有些代码中看到inline关键词修饰的函数,这里就和大家说下这个关键词。 ...

  • 内联函数

    内联函数 在类中定义的函数,但是实现却在类外面。并且在函数前加了 inline 就是内联函数,内联函数效率一般比较...

  • iOS之UIView

    初识iOS APP开发#### 在iOS APP开发中, main函数仍是程序的入口和出口, 但main函数不需要...

  • iOS OC中内联函数inline

    inline 在iOS中的一些框架中,static inline是经常出现的关键字组合。 static自不用多说,...

  • Java 方法内联

    什么是Java 方法内联? 我们先来看看普遍的内联函数含义。在维基百科中解释为: 内联函数:在计算机科学中,内联函...

网友评论

      本文标题:iOS开发中内联函数(UIKIT_STATIC_INLINE)的

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