美文网首页
OC语言day05-01内存管理基本概念

OC语言day05-01内存管理基本概念

作者: liyuhong165 | 来源:发表于2016-05-31 23:42 被阅读71次

pragma mark 内存管理基本概念

pragma mark 概念

/*
 // 1.内存管理的重要性
 
 
 #pragma mark 2.什么是内存管理
 // 2.什么是内存管理 \
 
 // 内存管理的管理范围 \
 任何继承了NSObject的对象 都要进行内存管理 \
 对于其他非 对象类型无需内存管理 (int、char、float、double、struct、enum)等
 
 #warning 存储的对象 都会存放到堆里面, 栈里面系统会帮我们自动释放
 // 只有OC对象才需要进行内存管理的本质原因 \
 OC对象存放于堆 里面 \
 非OC对象一般存放在栈里面(栈内存会被系统 自动回收)
 
 #pragma mark 3.栈和堆
 // 栈(操作系统): 由操作系统自动分配释放, 存放函数的参数值, 局部变量的值等,
 // 其操作方式类似于 数据结构中的栈(先进后出);
 
 // 堆(操作系统) : 一般有程序员分配释放, 若程序员不释放, 应用结束可能由OS回收,分配方式 到似于链表。
 
 */

pragma mark 代码

#import <Foundation/Foundation.h>
#pragma mark 类

#pragma mark main函数
int main(int argc, const char * argv[])
{

    
    int a = 10; // 栈
    int b = 20; // 栈
    
    // p :  栈
    // person 对象(计算器 == 1) : 堆
    /*
     Person = *p = [[Person alloc]init];
     */
    
    /*
     记过上一行代码后, 栈里面的变量a\b\c都会被回收,
     但是堆里面的Person对象还会留在内存中, 因为它是计数器 依然是1
     */

    return 0;
}


相关文章

  • OC语言day05-01内存管理基本概念

    pragma mark 内存管理基本概念 pragma mark 概念 pragma mark 代码

  • 内存管理

    一.内存基本介绍 1、OC内存管理的基本概念 2、OC内存管理的范围​管理范围:管理任何继承自NSObject的对...

  • iOS开发 - 对MRC和ARC的理解

    内存管理基本概念 在OC的内存管理,其实就是引用计数的管理。内存管理就是在程序需要时程序员分配一段内存空间,而当使...

  • 内存管理相关

    引文: 多线程相关 OC 语言相关 内存管理相关 UI视图相关 RunLoop相关 内存布局 内存管理方案 数据结...

  • Foundation与CoreFoundation

    目录一,基本概念二,内存管理三,互相转换四,宏定义 一,基本概念 1,Foundation:OC类库,NS开头 2...

  • Effective Objective-C 2.0 读书笔记五

    第五章 内存管理 内存管理对一门语言来说异常的重要,掌握一门语言的内存管理是很必要的。 29. 理解引用计数 OC...

  • iOS里边需要手动释放的方法

    ARC只会管理OC里边的内存,如果在OC里边用C语言开辟内存的话,就需要手动释放内存了。下面都是自己总结,仅供参考...

  • iOS | 内存管理

    如何使用内存以及如何分配内存对于设备和用户体验至关重要。OC语言作为C语言的超集,对于内存以及内存管理方面非常重要...

  • iOS面试:iOS内存分区

    OC语言是C语言的超集,所以先了解C语言的内存模型的内存管理会有很大的帮助。C语言的内存模型分为5个区:栈区、堆区...

  • 什么是堆栈,以及堆栈的区别

    首先,讨论的堆和栈指的是内存中的“堆区”和“栈区”,OC语言是C语言的超集,所以先了解C语言的内存模型的内存管理会...

网友评论

      本文标题:OC语言day05-01内存管理基本概念

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