摘要:
【面试题001】类型转换关键字,空类对象模型,拷贝构造函数,赋值运算符函数一,在C++中,有哪4个与类型转换相关的关键字? 好多书籍,推荐使用类型转换的关键字,但是c风格的类型转换操作,确实很方便,但是不易掌握。1、const_cast号称唯一具有常量性移除的转型操作符,这个说法实在很废话,不解释。平时几乎没有用过,遇到需要这个关键字的时候,都是直接修改了接口的类型,也不会去用这个关键字,一般来说老接口设计有问题啊。明明是const的,非得转成non-const实在别扭。2、dynamic_cast号称安全向下转型(safe downcasting),就是把一个父类型转成它的子类型,如果不是父 阅读全文
摘要:
【面试题002】java实现的单例模式,c++实现单例模式,实现禁止拷贝一 c++实现单例模式保证一个类,在一个程序当中只有一个对象,只有一个实例,这个对象要禁止拷贝,注意这里要区别于java。否者的话一个程序当中就可能出现多个对象的拷贝。我们要禁止拷贝,需要将拷贝构造函数以及等号运算符 声明为私有的,并且呢不提供他们的实现。这样子如果我们代码里面有拷贝构造的话,编译时候会出错。仅仅这样子是不够的,我们必须将构造函数声明为私有的,这是为了防止外部呢,任意的构造对象。既然我们将构造函数私有化了,外部就不能通过 Singleton s1; 来定义这样一个对象。那我们就需要提供一个接口让外部呢得到这 阅读全文