自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (5)
  • 收藏
  • 关注

原创 iOS多线程编程之Operation Queues

相对于GCD来说,Operation Queues会更加复杂一些,但是可以为operation之间添加依赖关系、暂停和恢复Operation Queue、取消正在执行的operation。这是GCD所做不到的。Operation要使用Operation Queue技术,需要使用NSOperation类来封装需要执行的任务。但是,NSOperation本身不能实例化,所以必须使用系统本身就实现好的两个

2016-07-13 11:08:12 557

原创 iOS开发 自定义UICollectionViewLayout实现Masonry Layout

集合视图(UICollectionView)的功能非常强大,它与表示图(UITableView)非常相似,不同之处在于集合视图本身并不知道自己应该怎样布局,它将布局方式委托给了UICollectionLayout的子类。

2015-08-19 08:26:46 3371

原创 iOS多线程编程之GCD

GCD(Grand Central Dispatch)是iOS多任务的核心,它可以让程序员不用直接参与到线程的创建和维护中,而让操作系统来直接处理线程的创建和管理,让多任务的开发更加简单。

2015-08-12 11:11:02 416

原创 iOS开发 数据持久化-归档

在iOS开发过程中,很多时候都需要进行一些数据的储存和读入,在数据量不大的情况下,使用plist储存数据是一种很方便的方式,但是plist只能允许储存一些系统自带的数据类型,如果需要储存自定义的数据类型,plist是是用不了的,但是可以使用另外一种数据持久化的方法-对象归档。要想使用对象归档,需要归档的对象就要实现NSCoding协议,实现NSCoding协议需要实现它的两个方法:- (v

2015-07-26 08:28:11 378

原创 iOS开发 使用NSNotificationCenter

在iOS开发中,类与类之间的通信方式有很多:delegate、block、KVO,还有就是NSNotificationCenter。使用NSNotificationCenter的好处就是可以让多个无引用关系的对象进行通信。注册通知[[NSNotificationCenter defaultCenter] addObserver:observer selector:SEL name:name

2015-04-29 21:08:08 368

原创 iOS开发 Category介绍

Category(类别)是一种为现有的类添加新方法的方式。创建CategoryCategory的代码一般是放在独立的文件中,文件的命名通常是“类名称+类别名称”的风格,使用Xcode可以帮你快速建立类别的文件:File-->New-->File-->Objective-C File,将File Type改为Category,并输入类名和类别名,点击Next即可(Xcode 6)。#im

2015-04-18 16:30:01 333

原创 iOS开发 strong和weak的使用

在iOS 5以后,苹果引入了ARC技术和strong和weak对象变量属性。事实上,strong关键字其实相当于之前版本的retain关键字,如果一个属性变量使用了strong关键字修饰,那么它指向的对象的引用计数就会+1(它拥有这个对象);而如果一个属性变量使用了weak关键字修饰,那么它指向的对象的引用计数则不变(它不拥有这个对象)。在此基础上,解释ARC技术的规则就会变得很简单:只要还

2015-04-18 09:20:24 1373

原创 iOS开发 KVC和KVO

KVC(Key-Value Coding)KVC(键值编码)是一种间接访问和更改对象状态的方式,其实现方法是使用字符串表示要更改的对象状态。将对象的属性名作为key,它们对应的值则是value,使用-valueForKey:可以返回key对应的value,使用-setValue: forKey:可以修改key对应的value。例如:Fruit拥有name和price,初始化时,name是ora

2015-04-15 10:22:53 412

求二维数组的最大和的子数组

给定一个二维数组,由其中若干邻近元素构成的矩形称为子数组,请编写程序计算所有子数组元素之和的最大值。 【输入数据】第一行为整数N,代表二维数组的大小为N*N。接下来的N*N个整数被空格和换行符隔开,表示按照行优先顺序的数组元素。 【输出数据】最大的子数组元素之和,并输出该子数组的所有元素。

2013-12-24

VS2010 MFC 计算器

用VS2010开发平台编写的计算器程序 功能有+、-、*、/、开根、求n次方、三角函数运算、退位操作等

2013-12-24

求二维数组最大和的子数组

给定一个二维数组,由其中若干邻近元素构成的矩形称为子数组,请编写程序计算所有子数组元素之和的最大值。 【输入数据】第一行是一个整数N,表示二维数组的大小为N*N。接下来的N*N个数被空格和换行符隔开,表示按照行优先顺序的数组元素。 【输出数据】最大的子数组元素之和,并输出该子数组的所有元素。

2013-12-24

C++木材抛光问题

一堆木材共有N根,已知它们的长度和重量。现在要用一台木工机床把它们依次抛光。机床抛光一根木材之前需要一段准备时间,来进行清理操作和调整机器。机床的准备时间可以这样计算: (a)第一根木材的准备时间为1分钟; (b)抛光一根长度为L重量为W的木材后,再抛光一根长度为L’重量为W’的木材,如果L≤L’并且W≤W’,则不需要准备时间;否则需要1分钟准备时间。 对给出的N根木材,安排合适的抛光顺序,使得总的准备时间最短。例如:共有5根木材,长度和重量分别为(9,4)、(2,5)、(1,2)、(5,3)和(4,1),则最短准备时间为2分钟,抛光顺序为(4,1)、(5,3)、(9,4)、(1,2)、(2,5)。 【输入数据】 包含T组测试数据,T在第一行给出。每组测试数据包括两行,第一行是一个整数N(1≤N≤5000),表示木材的根数;第二行包括用空格隔开的2N个整数L1,W1,L2,W2,…Ln,Wn,每个整数最大不超过10000,Li和Wi分别表示第i根木材的长度和重量。 【输出数据】 对每组输入数据输出两行,第一行输出该组的最短准备时间(分钟),第二行以(Li,Wi)的形式依次输出抛光顺序。

2013-12-07

MFC单文档位图拖动

用 VS2010 MFC实现位图的添加,并实现位图的拖动

2013-11-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除