美文网首页
指针初步了解

指针初步了解

作者: 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

相关文章

  • 指针初步了解

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

  • 指针初步

    下面是引用和指针的问题:

  • Day6

    学习内容:指针在字符串处理中的应用收获: 通过习题初步掌握了指针的各类基本用法; 了解了常见的字符串处理函数; 初...

  • 指针初步01

    int a = 3; int *p; //表示定义一个指针变量。它指向一个可以存4个字节的内存地址 p = &a;...

  • C语言基础及指针⑨联合体与枚举

    接续上篇C语言基础及指针⑧文件IO 在上篇中 , 我们初步了解了C语言的IO操作 , 编写IO操作的大致流程: 文...

  • 初步了解

    什么是css语法?CSS (Cascading Style Sheets) 层叠样式表,用来编辑 HTML中元素...

  • 10.19

    今天学习了预处理命令,宏定义,define,ifdef等,还初步了解了文件的部分,宏定义听起来比指针要直观的多,无...

  • iOS-Runtime2-Class的内部结构、method_t

    一. Class的内部结构 在isa指针和superclass指针+窥探Class中,我们初步窥探了Class的内...

  • Day5

    学习内容:指针的概念与应用收获: 了解了内存的相关概念; 了解了指针的相关概念; 了解了指针变量的使用; 了解了字...

  • C 指针初步认识(二)

    数组指针 一个变量有一个地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址。所谓数...

网友评论

      本文标题:指针初步了解

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