美文网首页
指针初步了解

指针初步了解

作者: coding_Liu | 来源:发表于2018-01-07 01:24 被阅读3次

    结构体和类

    本质区别: 类的本质是结构体,但是指针指向一个类 和指向一个结构体是不同的概念

    例证:

    nsstring (oc) 是类 ----- 指针指向是相当于浅拷贝
    string (swift) 是结构体------指针指向是相当于深拷贝

    测试代码如下(是测试了类能改变,结构体改变不了,从而得出上面结论)

    //  ViewController.swift
    //  指针测试
    //
    //  Created by Admin on 2017/12/29.
    //  Copyright © 2017年 刘普昌. All rights reserved.
    //
    
    import UIKit
    
    class ViewController: UIViewController {
    
        override func viewDidLoad() {
            super.viewDidLoad()
            
            var list = [bb]()
            for index in 0...4 {
                let b = bb.init(str: "\(index)")
                list.append(b)
            }
            let change = list[0]
            change.str = "ZHESHIDI!"
            for index in 0...list.count-1 {
                print(list[index].str!)
            }
            
            // Do any additional setup after loading the view, typically from a nib.
        }
    
        override func didReceiveMemoryWarning() {
            super.didReceiveMemoryWarning()
            // Dispose of any resources that can be recreated.
        }
    
        class bb {
            init(str: String) {
                self.str = str
            }
            var str: String?
        }
    }
    
    

    控制台数据

    ZHESHIDI!
    1
    2
    3
    4
    

    相关文章

      网友评论

          本文标题:指针初步了解

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