zoukankan      html  css  js  c++  java
  • 装箱和拆箱

    C的基本类型使用NSNumber

    装箱        NSNumber *ageNumber = [NSNumber numberWithInt:23];

                  NSNumber *ageNumber2 = @23;

          

    拆箱        int age = [ageNumber intValue];

            

    C的复合类型结构用NSValue

    创建

            CGPoint origin = CGPointMake(10, 10);

            CGSize size = CGSizeMake(20, 20);

            CGRect rect = CGRectMake(10, 10, 20, 20);

    访问具体的变量

            CGFloat x = rect.origin.x;

            CGFloat y = rect.origin.y;

            CGFloat width = rect.size.width;

            CGFloat height = rect.size.height;

    装箱

            NSValue *rectV = [NSValue valueWithRect:rect];

            NSValue *pointV = [NSValue valueWithPoint:origin];

            NSValue *sizeV = [NSValue valueWithSize:size];

    拆箱        

            CGRect rect1  = [rectV rectValue];

            NSLog(@"%@", rectV);

     

    -----------ps------------------------------------------------------------

             struct CGPoint {

                CGFloat x;

                CGFloat y;

             };

             struct CGSize {

             CGFloat width;

             CGFloat height;

             };

             struct CGRect {

             CGPoint origin;

             CGSize size;

             };

     

  • 相关阅读:
    HiveQL:数据定义
    linux学习整理
    Hive中问题解决整理
    Hive 数据类型和文件格式
    neo4j 简要安装步骤
    Leetcode 刷题笔记二 两数相加(使用链表) -- scala版本
    leetcode 刷题笔记一 两数之和 scala版本
    windows 安装 tensorflow
    elemnetui 下载,及引用
    cenos7 安装mysql
  • 原文地址:https://www.cnblogs.com/huoran1120/p/5072578.html
Copyright © 2011-2022 走看看