随笔分类 -  01.C#妹妹和Objective-C阿姨对话录

摘要:C#妹妹:内存的清理跟生活中的拆迁一样是个麻烦事情啊 Objective-C阿姨:是啊,该拆的不拆,占用空间,不该拆的拆了,程序崩溃 C#妹妹:说白了,难度不在拆上,在判定上,判断到底那些内存是用不上的。 Objective-C阿姨:没错,就像现实生活中的拆迁,扒房子不困难,推土机过来就好了,困难的是决定扒谁的房子。。。扒对了相安无事,扒错了弄个自焚的出来⋯⋯ C#妹妹:做个广告,.NET的垃圾回收机制是相当不错的。判断很准确~ Objective-C阿姨:没错,但是也要付出代价,依靠运行时检查废弃的对象,就好像依靠人口普查来确定那些房子没人用,是靠定时遍历来实现的,毕竟影响性能,并且回收也不可能那么及时。 阅读全文
posted @ 2011-04-28 09:24 小墨的童鞋 阅读(7060) 评论(29) 推荐(22) 编辑
摘要:C#妹妹:操作系统天天说控制内存空间价格,咋还这么高?我巨资购买的内存空间,后来发现竟然在硬盘上。。。虚拟内存!!TMD! Objective-C阿姨:操作系统全靠卖内存空间挣钱呢,你说价格能会降么?你多看看那些程序员心理就平衡了,上海买房子结果买到江苏,北京买房子结果买到河北,上班还要跨省,天天面向对象,到头来连个对象都找不到。。 C#妹妹:靠,还是那句话“同一个世界 同一个噩梦”,你说内存空间卖光了咋办? Objective-C阿姨:把你内存空间回收了再卖给别人呗。 C#妹妹:啊??!!人家在用的内存也回收啊? Objective-C阿姨:废话,所有的内存都是操作系统的,只是借给你而已,操作系统让你强制退出,你有办法哇,把你干掉然后发个新闻稿,说“死者目前情绪稳定”就好了。,不信看看你的《内存空间证》上使用期限是多少? C#妹妹:60ms?! 真TMD的!这么霸 阅读全文
posted @ 2011-04-20 08:53 小墨的童鞋 阅读(6417) 评论(33) 推荐(23) 编辑
摘要:C#妹妹:哇,冤家路窄啊,这个不是Objective-C阿姨家的狗狗么? 狗狗:日,到底谁跟谁是冤家。。 C#妹妹:不服气呀~再给你弄一陀吃吃。。 #import #import "Dog.h" int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; Dog *d=[Dog new]; [d Eat:@"便便" EatQty:1]; [d release]; [pool drain]; return 0; } 狗狗: C#妹妹:操,升级啦,看姐姐我扒你的皮,毁你的源代码。。 Objective-C阿姨:你这个小姑 阅读全文
posted @ 2011-04-16 02:49 小墨的童鞋 阅读(4520) 评论(13) 推荐(9) 编辑
摘要:C#妹妹:阿姨,今天这么早就出来遛狗了?? Objective-C阿姨:是啊,我的狗老了,有点失眠,起的是早点...你看看,这个狗狗特聪明特听话 C#妹妹:哇塞,双胞胎狗狗耶.... Objective-C阿姨:啥眼神儿啊。。。,是一只狗狗分成两个文件而已。。你不知道C语言有头文件么? C#妹妹:。。。仔细看看还是看得懂得。有方法,有变量。。。还有这个Dog类继承自NSObject。 Objective-C阿姨:你说的没错, 。每个类由两部分组成,接口(@interface开头 @end结尾)和实现(@implementation 开头 @end结尾),同样叫接口(interface),但是跟你的接口意思完全不同,这里接口的意思是告诉编译器这个类提供那些数据成员(实例变量)和方法。我这里跟.NET的“接口(interface)”类似的概念是“协议(protocol)”,类似的事情还有很 阅读全文
posted @ 2011-04-13 17:20 小墨的童鞋 阅读(5184) 评论(35) 推荐(15) 编辑
摘要:C#妹妹:阿姨,你看我们的代码很像啊⋯⋯ Objective-C阿姨:是啊,我们都跟C语言是亲戚啊,包括C++和Java也都一样,都怪当初C爷爷太能干了,应用太广泛,为了方便人们学习,接下来的很多语言都在C的基础上发展。不过我跟你在血统上区别还是很大的,我是C语言的扩展,或者说是增强,爷爷的那套东西我都具备的,原始的C语言完全不用修改,我就可以编译运行,但是你就不行,你只是长得比较象而已。跟C++相比呢,我更简单易学一点。 C#妹妹:这样啊,#import 这个语句是导入命名空间的意思么,我弟弟VB.NET好像 就是用import导入命名空间的,不过我用using语句。 Objective-C阿姨:阿姨可没有命名空间这个说法或者类似的功能的,这个语句是告诉编译器可以在那个头文件里查询定义,更有点像你添加引用的功能吧。 C#妹妹:那怎么避免 阅读全文
posted @ 2011-04-08 16:58 小墨的童鞋 阅读(5003) 评论(22) 推荐(13) 编辑