新浪微博 有道云笔记 麦库 EverNote Pocket Instapaper 更多
摘要: KVO(NSKeyValueObserving:键 - 值编码的简称)与KVC(NSKeyValueCoding:键值观察机制的简称): 在很多时候接触到很多地方都有对 KVC,KVO 的描述,但是都是一笔带过。只知道这是Object-C提供的一个不错的机制,是能够让代码更简洁的特性。它们的目的截然不同:键值对编码可以通过选择第一个符合条件的实现而解决间接方法调用;属性则可以让编译器帮我们生成部分代码。键值对编码实际上是 Cocoa 引入的,而属性则是 Objective-C2.0语言新增加的。键值对编码(KVC)原则键值对编码意思是,能够通过数据成员的名字来访问到它的值。这种语法很类似于关. 阅读全文
posted @ 2012-11-16 09:00 iTeaTime(技术清谈) 阅读(818) 评论(0) 推荐(0) 编辑
摘要: 1.Difference between shallow copy and deep copy?
浅复制和深复制的区别?
答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身。
深层复制:复制引用对象本身。
意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源
还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一个思想。深复制就好理解了,内存中存在了
两份独立对象本身。
用网上一哥们通俗的话将就是:
浅复制好比你和你的影子,你完 阅读全文
posted @ 2012-11-15 11:47 iTeaTime(技术清谈) 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 47.kvc是什么?kvo是什么?有什么特性?48.响应者链是什么?49.unix上进程怎么通信? UNIX主要支持三种通信方式: 1. 基本通信:主要用来协调进程间的同步和互斥 (1)锁文件通信 通信的双方通过查找特定目录下特定类型的文件(称锁文件)来完成进程间 对临界资源访问时的互斥;例如进程p1访问一个临界资源,首先查看是否有一个特定类型文件,若有,则等待一段时间再查找锁文件。 (2)记录锁文件 2. 管道通信:适应大批量的数据传递 3. IPC :适应大批量的数据传递50.timer的间隔周期准吗?为什么?怎样实现一个精准的timer?51.UIscrollVew用到了什么设计模式?还 阅读全文
posted @ 2012-11-15 11:46 iTeaTime(技术清谈) 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 本文中示例的xcode版本为4.3.1方案1:NSZombieEnabled先选中工程, 依次 "Product"-"Edit Scheme", 左栏选择"Run...", 右栏选中Arguments,然后在Environment Variables下面添加以下三个属性, 设值为YESNSDebugEnabledNSZombieEnabledNSAutoreleaseFreedObjectCheckEnabled有时候在程序出错的时候能准确定位到奔溃的那一行,或者会给你下面这样的提示,而不仅仅是EXEC_BAD_ACCESS:mess 阅读全文
posted @ 2012-11-13 12:34 iTeaTime(技术清谈) 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 如果NSArray数组为空,要注意 如果NSArray数组为空,要注意这样的调用会停止。而不是返回空 [array objectAtIndex:0]为此我们做一个验证:如果一个数组为空,那么用这个空数组去初始化另一个数组,被初始化的数组会不会也为空? NSArray *array = [[NSArray alloc] initWithArray:nil]; NSArray *arrayNil = [NSArray arrayWithObject:[array objectAtIndex:0]]; 结果是:程序崩溃,捕获程序异常,后发现程序出错点就在 NSArray ... 阅读全文
posted @ 2012-11-13 09:23 iTeaTime(技术清谈) 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 我在学习iphone开发教程的中第8章(也就是《iOS5开发基础教程》最新版的“08 - Sections2”下载地址:http://vdisk.weibo.com/s/hBHg6)要为一个tableView实现搜索功能的时候,遇到了关于这个NSMutableDictionary一个问题,学习了好长时间终于想通,现在将问题以及我的理解总结一下.《iOS5开发基础教程》其中,在SectionViewController.m 中有这样一个方法:-(void)resetSearch { self.names = [self.allNames mutableDeepCopy]; N... 阅读全文
posted @ 2012-11-12 21:18 iTeaTime(技术清谈) 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 运行环境为Window XP实验目的和要求1.掌握扩展对话框的设计方法;2.掌握对话框常用控件的使用方法;3.要求最后提交完整代码;实验内容与分析设计(1)本例实现了一个简单的填写资料的例子,通常情况下填写姓名和性别,在有特殊需要时,还需要填写更多信息则切换到完整对话框体。 (2) 当单击“详细”按钮时,对话框扩展,显示其他更详细的信息,再次单击“详细”按钮,扩展窗口又重新隐藏。实验步骤与调试过程第一步: Ctrl+N新建工程 其他项目---空的Qt项目 命名为 extention步骤二 Ctrl+N 新建选择 C++——C++源文件,命名为main.c 在mian.c中写入以下代码//... 阅读全文
posted @ 2012-11-10 20:05 iTeaTime(技术清谈) 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 在学习Qt和IOS的过程中,感觉“Qt信号槽机制”与”iOS(MVC)中的Target—Action机制”有许多相似之处,现通过一个相同的程序来探究Qt与ios的实现过程的两个相同之处。ios中采用的是MVC这种设计模式,这种模式的关系如下所示:第一点相似之处:“信号槽机制”中构建元素搭配与Ios"Target-Action"构建有极大的相似之处:Qt:一个信号可以与多个槽构成“信号槽";一个槽可以与多个信号构成“信号槽”;信号与信号可以构成“信号槽”;而iOS一个target可以与多个Action构成“信号槽";一个Action可以与多个target构 阅读全文
posted @ 2012-11-10 16:05 iTeaTime(技术清谈) 阅读(607) 评论(0) 推荐(0) 编辑
摘要: Qt的信号和槽机制是Qt的一大特点,实际上这是和MFC中的消息映射机制相似的东西,要完成的事情也差不多,就是发送一个消息然后让其它窗口响应,当然,这里的消息是广义的说法,简单点说就是如何在一个类的一个函数中触发另一个类的另一个函数调用,而且还要把相关的参数传递过去.好像这和回调函数也有点关系,但是消息机制可比回调函数有用多了,也复杂多了MFC中的消息机制没有采用C++中的虚函数机制,原因是消息太多,虚函数开销太大.在Qt中也没有采用C++中的虚函数机制,原因与此相同.其实这里还有更深层次上的原因,大体说来,多态的底层实现机制只有两种,一种是按照名称查表,一种是按照位置查表,两种方式各有利弊,而 阅读全文
posted @ 2012-11-10 15:14 iTeaTime(技术清谈) 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 南阳理工学院计算机操作系统实验之课程名称:计算机操作系统实验学期:2011-2012第二学期实验目的和要求(1)了解在Linux操作系统中进程的特点和表现形式(2)掌握Linux查看进程的方式与方法(3)在一个进程中创建另一个进程的方法(4)掌握父进程和子进程的关系和fork的用法实验内容与分析设计实验内容:(1)编写一个简单的程序,使用ps或top工具观察该进程的的ID号,并使用kill工具终止进程运行。(2)编写一个程序,使用fork函数生成一个子进程,并使用相关工具观察进程状态。实验步骤:(1)#include <stdio.h> int main() { //设计一个循环, 阅读全文
posted @ 2012-11-10 14:32 iTeaTime(技术清谈) 阅读(1866) 评论(1) 推荐(0) 编辑