上一页 1 2 3 4 5 6 7 ··· 14 下一页
摘要: 为了解决多继承下的二义性而设计的vitrul继承class Base{public: Base(void); ~Base(void);};Base::Base(void){ printf("Base::Base():%p\n",this);}class ChildFirst : ... 阅读全文
posted @ 2014-07-10 16:51 酱酱爱 阅读(1276) 评论(0) 推荐(1) 编辑
摘要: 比如。我们想实现一个Set类,而已经有一个List类可提供给你使用,我们到底用is-a(public继承)关系还是用has-a(组合)关系呢?1:如果使用is-a关系,则class Set:public List{。。。。};在处理插入的时候,List的insert方法不能满足我们的需要,因为它可以... 阅读全文
posted @ 2014-07-10 15:28 酱酱爱 阅读(2403) 评论(0) 推荐(0) 编辑
摘要: 切勿重新定义继承来的带缺省参数的函数。我们知道,继承来的函数是virtual 的,至于原因在上一节中已经说明了,即“切勿重新定义父类non-virtual函数”。所以确切的描述应该是“切勿重新定义继承来的带缺省参数的virtual函数”。因为缺省参数是静态绑定,而virtual是动态绑定。typed... 阅读全文
posted @ 2014-07-10 15:22 酱酱爱 阅读(795) 评论(0) 推荐(0) 编辑
摘要: 子类如果重新定义了父类的non-virtual函数则不会有多态效果。为方便描述,这里的方法和继承方式都用public。至于原因嘛,你懂的!1:子类直接继承父类方法class BaseOption{public: void Function();};void BaseOption::Functi... 阅读全文
posted @ 2014-07-10 12:46 酱酱爱 阅读(3721) 评论(0) 推荐(0) 编辑
摘要: 1:访问控制1.1 public 这类型成员可以被类本身函数访问,也可以被外部创建的类对象调用。子类对象与子类内部可以访问1.2 protected类型成员,只能被类本身函数访问。外部创建的类对象没有访问权限。子类对象没有访问权限,子类内部可以访问1.3 private类型成员,只能被类本身函数访问... 阅读全文
posted @ 2014-07-09 18:26 酱酱爱 阅读(1277) 评论(0) 推荐(0) 编辑
摘要: C++函数模版与类模版。template void SwapFunction(T &first, T &second){}//函数模版template //类模版class CTemplate{public: void SWap(T &first, T &second){ }};#include... 阅读全文
posted @ 2014-07-08 17:30 酱酱爱 阅读(3750) 评论(0) 推荐(0) 编辑
摘要: 拷贝构造函数要求把所有变量都需要做拷贝。在有继承关系情况先,子类的拷贝构造函数,需要调用父类拷贝构造函数。示例代码如下:class Base{public: virtual ~Base(); Base(const char *pStr); Base(const Base &othe... 阅读全文
posted @ 2014-07-08 13:34 酱酱爱 阅读(7982) 评论(0) 推荐(1) 编辑
摘要: 在实现多态时候,基类的析构函数应该写成virtual。在用基类申明实例化的子类对象,在delete时候,如果基类不是virtual的析构函数则不能调用进子类的析构函数class Base{public: Base(); virtual ~Base();public: char *m... 阅读全文
posted @ 2014-07-07 17:51 酱酱爱 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 如果你一看见C++中const就脱口而出:“常量!”那只能说明你对c++不甚了解。或者说你太2了.const得一些使用方法与场景如下:1:const修饰普通变量,全局变量,静态变量1 const int iTmp = 1;2 int const iTmpEx = 2;变量保持其原有属性,只是多了一个... 阅读全文
posted @ 2014-07-07 15:52 酱酱爱 阅读(2950) 评论(0) 推荐(0) 编辑
摘要: dispatch_semaphore 信号量基于计数器的一种多线程同步机制。在多个线程访问共有资源时候,会因为多线程的特性而引发数据出错的问题。 dispatch_queue_t queue = dispatch_get_global_queue(0, 0); dispatch_semaphore_t semaphore = dispatch_semaphore_create(1); NSMutableArray *array = [NSMutableArrayarray]; for (int index = 0; index < 100000; index++) { dispat... 阅读全文
posted @ 2014-03-14 13:47 酱酱爱 阅读(17163) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 ··· 14 下一页