- 博客(21)
- 资源 (33)
- 收藏
- 关注

原创 iOS面试题
基础篇Objective-C的类可以多重继承么?可以采用多个协议么?不可以多重继承,可以采用多个协议.objc使用什么机制管理对象内存?1、MRC 手动引用计数 2、ARC 自动引用计数,现在通常使用自动引用计数import 跟#include 又什么区别,@class呢, #import<> 跟 #import””又什么区别?import是Objective-C导入头文件的关键字,#includ
2015-12-19 11:34:04
406
转载 GCD由浅入深学习
本文转自[标哥的技术博客],欢迎转载,转载时请注明出处!引言虽然GCD使用很广,而且在面试时也经常问与GCD相关的问题,但是我相信深入理解关于GCD知识的人肯定不多,大部分都是人云亦云,只是使用过GCD完成一些很简单的功能。当然,使用GCD完成一些简单的功能,通常已经能够满足我们的需求了。不过,笔者比较喜欢刨根问底,因此在这里记录下学习的过程。Tips高手可绕边走!!!简介iOS实现提供实现多线程的
2016-03-15 14:33:21
485
转载 iOS NSOperation/Queue
本文转自:标哥的技术博客前言iOS实现多线程的方式有三种,分别是NSThread、NSOperation、GCD。关于GCD,请阅读[GCD深入浅出学习]简介NSOperation封装了需要执行的操作和执行操作所需的数据,提供了并发或非并发操作,可以设置最大并发数,取消操作等。iOS使用NSOperation的方式有两种: * 直接使用系统提供的两个子类:NSInvocationOperation和
2016-03-15 13:28:43
719
原创 文章标题
由于StoryBoard故事板对Tabbar的tinColor更改无效,因此自定义一个可视化类,方便StoryBoard对Tabbar的开发,提高StoryBoard的开发效率。 先看下效果:自定义一个可视化类LLuTabBarTintColor.h#import <UIKit/UIKit.h>IB_DESIGNABLE // 动态刷新@interface LLuTabBarTintColor
2016-02-24 09:46:58
394
原创 Objective-C内存管理第七弹:ARC中@property的使用
//main.m#import <Foundation/Foundation.h>#import "Person.h"//#import "Dog.h"int main(int argc, const char * argv[]) { @autoreleasepool { Person * person = [[Person alloc] init]; D
2015-12-13 22:04:13
337
原创 Objective-C内存管理第六弹:ARC
//main.m#import <Foundation/Foundation.h>#import "Person.h"#import "Dog.h"/* ARC Automatic Reference Counting 自动引用计数 ARC 编译器特性 编译器会在适当的适合,加入内存管理代码 强指针:默认所有的指针都是强指针 只要是有强指针指向一个对象,那么这个对象就
2015-12-13 21:57:29
380
原创 Objective-C内存管理第五弹:自动释放池
//main.m#import <Foundation/Foundation.h>#import "Person.h"/* @autorelease:延长对象的生命周期 把对象放到离自己最近的自动释放池中当自动释放池销毁的时候,它会把放在其中的所有对象进行一次release的操作它和对象在哪里创建的没有关系 */int main1(int argc, con
2015-12-13 21:52:37
358
原创 Objective-C内存管理第四弹:循环引用
//main.m/* 循环引用会导致两方均不能成功释放。 多个对象之间不能形成封闭的环 若出现这个封闭环所有对象都不会被释放 解决方法: 其中一端必须是assign A(_B)->>>>>>>>>>B(_C) | | | | | | | | |
2015-12-13 21:47:20
302
原创 Objective-C内存管理第三弹:@property的使用
//main.m#import <Foundation/Foundation.h>#import "Person.h"#import "Room.h"int main(int argc, const char * argv[]) { Person * p = [[Person alloc] init]; Room * r = [[Room alloc] init]; [p s
2015-12-13 21:42:23
397
原创 Objective-C内存管理第二弹:多个对象的内存管理
//main.m#import <Foundation/Foundation.h>#import "Person.h"#import "Room.h"int main(int argc, const char * argv[]) { Person * p = [[Person alloc] init]; //p->>>1 Room * r = [[Room alloc] init]
2015-12-13 21:37:13
305
原创 Objective-C内存管理第一弹:引用计数
//main.m#import <Foundation/Foundation.h>#import "Person.h"/* 如果内存管理不当: 1、不再使用的对象没有被回收,内存泄露,最终导致程序闪退 2、正在被使用的对象被释放了,野指针,访问野指针导致程序崩溃 1、当一个对象刚刚出生时候,它的引用计数为1 2、当对象的引用计数为0的时候,系统立即将他回收 3、release 引用计数
2015-12-13 21:31:25
470
转载 二叉排序树的创建,查找与删除
/************************************************************二叉排序树的查找与删除 Designed BY LU 2014.12.12************************************************************/#include#includeusing namespac
2014-12-16 20:50:29
1446
原创 数据结构腾讯面试题
在单链表中如何用最快的方法找到中间元素???正常你是不是想着先把单链表遍历一遍得到他的长度,再重新遍历1/2长度便可得到中间元素。。。我很菜,我也这么想的,但是!!!算一下该方法的时间复杂度:n+1/2*n=2/3*n,是不是有点麻烦下面讲一下最近学到很厉害的方法:快慢指针,,直接上代码:
2014-12-16 19:54:57
585
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人