• [OC Foundation框架


    底层封装是使用了typedef定义的结构体

    typedef struct _NSString{
    xxx
    xxx
    } NSString;
     
    1. NSRange 结构体
    #注意结构体不是对象
    3种定义方式
    1         typedef struct _NSRange{
    2             int location;
    3             int length;
    4         } NSRange;
    (1) 先声明后赋值
    (2)同时声明、按照顺序赋值
    (3)使用c函数,同时声明、赋值,并指定赋值的成员变量名
    1     NSRange range = {1, 2};
    2     NSRange range2 = {.location = 1, .length = 2};
    3     NSRange range3 = NSMakeRange(1, 2);
     
    返回对象字符串形式:
    NSStringFromRange(NSRange)
    转换并返回一个字符串
     
    2. NSPoint / CGPoint 结构体
     1 void point()
     2 {
     3     NSPoint p;
     4     p.x = 1;
     5     p.y = 2;
     6    
     7     p = NSMakePoint(4, 2);
     8    
     9     p = CGPointMake(11, 33);
    10    
    11     NSString *str = NSStringFromPoint(p);
    12     NSLog(@"The point is %@", str);
    13 }
     
    3. NSSize/ CGSize 结构体
     1 void size()
     2 {
     3     NSSize size;
     4     size.width = 100;
     5     size.height  = 90;
     6    
     7     size = NSMakeSize(42, 55);
     8    
     9     size = CGSizeMake(63, 77);
    10    
    11     NSString *str = NSStringFromSize(size);
    12     NSLog(@"The size is %@", str);
    13 }
     
    4. NSRect / CGRect
     1 void rect()
     2 {
     3     NSRect r;
     4     r.origin.x = 10;
     5     r.origin.y = 12;
     6     r.size.height = 44;
     7     r.size.width = 62;
     8 
     9     r = NSMakeRect(13.11, 42.11, 42.55, 11.44);
    10    
    11     r = CGRectMake(13.11, 42.11, 42.55, 11.44);
    12    
    13 }
     
    origin 是一个 NSPoint
     
  • 相关阅读:
    Java8新特性
    搜索解决方案 -- ElasticSearch入门
    插入排序
    单点登录系统CAS入门
    快速排序
    选择性排序
    冒泡排序
    springcloud入门
    消息中间件 -- RabbitMQ
    ActiveMQ中消息的重发与持久化保存
  • 原文地址:https://www.cnblogs.com/hellovoidworld/p/4119390.html
Copyright © 2020-2023  润新知