摘要: 网上看到的关于C++函数的重载、覆盖和隐藏区别的回答,如下(其内容来源于C++面试宝典中一道题目):a.成员函数被重载的特征:(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。b.覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须有virtual 关键字。c.“隐藏”是指派生类的函数屏蔽了与其同名的基类函数,规则如下:(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。(2) 阅读全文
posted @ 2012-07-05 16:29 酱酱爱 阅读(4278) 评论(0) 推荐(0) 编辑
摘要: 版权声明此文版权归作者Vince Yuan (vince.yuan#gmail.com)所有。欢迎非营利性转载,转载时必须包含原始链接http://vinceyuan.cnblogs.com/,且必须包含此版权声明的完整内容。版本1.1发表于2010-03-08前言初学objectice-C的朋友都有一个困惑,总觉得对objective-C的内存管理机制琢磨不透,程序经常内存泄漏或莫名其妙的崩溃。我在这里总结了自己对objective-C内存管理机制的研究成果和经验,写了这么一个由浅入深的教程。希望对大家有所帮助,也欢迎大家一起探讨。此文涉及的内存管理是针对于继承于NSObject的Class 阅读全文
posted @ 2012-07-05 11:42 酱酱爱 阅读(193) 评论(0) 推荐(0) 编辑
摘要: The bounds rectangle, which describes the view’s location and size in its own coordinate system.The frame rectangle, which describes the view’s location and size in its superview’s coordinate system. 阅读全文
posted @ 2012-07-05 11:00 酱酱爱 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 此文章来源于网络 :http://blog.csdn.net/henry_sea/article/details/6710900核心的应用程序对象-NSApplication、NSWindow、和NSView-都是响应者,它们是NSResponder(参见图6-19)的直接或间接子类的实例。这个抽象类定义了能够响应事件的对象的接口和期望的行为。NSResponder的子类完全或部分实现了这个行为。图6-19NSResponder及其直接子类请注意:还有其它两个Application Kit类直接继承自NSResponder:NSWindowController和NSDrawer。虽然NSWin 阅读全文
posted @ 2012-07-05 10:40 酱酱爱 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1协议协议负责声明那些可以被任意类所实现的方法。协议应用于至少在以下三种情况:声明那些对象需要实现的方法。为一个对象声明接口来隐藏它的类。抽出那些没有继承关系的类之间的相似之处。声明接口类和接口声明了那些由某一个类联系起来的一些方法——类大部分情况下要实现的一些方法。另一方面,正式和非正式的协议所声明的方法独立于任何一个特定的类,但是任何一个类也许是很多的类都有可能实现。协议只不过是一个方法声明的列表,并不附属于某一个类的定义。例如:这些负责收集用户鼠标动作的方法就可以被 阅读全文
posted @ 2012-07-05 09:32 酱酱爱 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1选择器在objc中选择符有两个含义。一种是用在代码中向对象发送消息时它代表了一个方法名。另一种是当源代码被编译时选择器会指向一个唯一标识以代替方法名,被编译后的选择器类型为SEL。所有相同名字的方法会有相同的选择器。你可以使用一个选择器来调用一个对象的方法。这个是Cocoa中目标-动作设计模式的基础。方法和选择器出于运行效率的考虑,在编译后的代码中不会使用由ASCII码组成的方法名。编译器会将每个方法名写到一个表中,然后为每个方法名分配一个唯一标识用于在运行时标识一个方 阅读全文
posted @ 2012-07-05 09:17 酱酱爱 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 此文章翻译自苹果官方文档原文地址:http://developer.apple.com/TP30001163-CH12-SW1分类和扩展分类允许你向一个已有的类添加方法即使你没有这个类的源代码。分类的强大功能就在于它让你可以不使用子类而拓展一个类的功能。使用分类,你还可以将一个类的实现分布在几个不同的文件中。类扩展同分类类似,但是允许在@interface以外的地方为类声明API。给类添加方法你可以在一个类的接口文件中的分类名下为类声明方法,同时在实现文件中相同方法名下实现他们。一个分类名代表了为一个类声明的一些方法而不是一个新类。但是,分类不能为一个类声明新的实例变量。分类添加的方法会成为类 阅读全文
posted @ 2012-07-05 09:15 酱酱爱 阅读(560) 评论(0) 推荐(0) 编辑