1.为什么派生层次上的类,同一个虚函数在各个类的虚表中的位置一样? 因为:对虚函数的调用是通过虚指针+偏移地址构成,由于对虚函数的调用都是通过这种方式,所以对同一个虚函数的偏移值就必须相同。 2.为防止对象切片有什么办法? 可以将基类定义为纯虚类 3.为什么构造函数里面的虚机制不起作用? a.如果构 ...
分类:
编程语言 时间:
2016-09-04 15:54:38
阅读次数:
216
一.what(什么是视图?) 1.视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据并不真正地存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进行查询的结果。 2.根据创建视图时给定的条件,视图可以是一个数据表的一部分,也可以是多个基表的联合,它存储 ...
分类:
数据库 时间:
2016-08-29 17:45:34
阅读次数:
228
select * |{[DISTINCT] column |expression [alias],...} from table; --虚表(dual) select 5+3,5-3,5*3,5/2 from dual; select 'Hello World',100 from dual; sal ...
分类:
其他好文 时间:
2016-08-22 23:13:28
阅读次数:
101
关于 C++中new背后的行为, 以前已经写过一篇了 理解C++中new背后的行为, 但是里面也只是泛泛而谈,没有真凭实据, 下面我们从汇编的角度看C++编译器究竟在背后干了什么? 我们的代码很简单, 如下: #include <iostream> class A { public: virtual ...
分类:
编程语言 时间:
2016-08-19 06:16:21
阅读次数:
199
1.空类所占空间大小 空类所占空间为1,单一继承的空类空间也为1,多继承的空类空间还是1.但是虚继承涉及虚表(虚指针),所以sizeof(C)的大小为4。 2.内联函数与宏定义 Ans:内联函数和普通函数相比可以加快程序运行速度,因为不需要中断调用,在编译的时候内联函数可以直接镶嵌到目标代码中。而宏 ...
分类:
其他好文 时间:
2016-08-17 10:29:58
阅读次数:
124
C++对象模型 有两个概念可以解释C++对象模型: 语言中直接支持面向对象程序设计的部分。对于各种支持的底层实现机制。 单继承(父类含虚函数) 输出:基类指针p在运行时发生动态绑定,fun2调用子类方法,fun1由于没有virtual,仍然调用父类方法 内存模型: 指针的虚表指向子类方法地址 当一个 ...
分类:
编程语言 时间:
2016-08-06 17:26:02
阅读次数:
189
一.what(什么是视图?) 1.视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据并不真正地存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进行查询的结果。 2.根据创建视图时给定的条件,视图可以是一个数据表的一部分,也可以是多个基表的联合,它存储 ...
分类:
数据库 时间:
2016-08-05 15:51:09
阅读次数:
183
1、在单表上创建视图:视图在左边 取特定属性: 可以换别名:bookName变b,price变p。 2、在多表上创建视图: 给表取别名进行创建视图并查看视图: 3、查看视图:可以用缩写DESC。 下面2个对比可以看出v5确实是虚表,很多都是NULL,不像t_book都有数据。 详细信息:查看具体建表 ...
分类:
其他好文 时间:
2016-08-04 21:40:01
阅读次数:
210
一,游标是什么? 游标是一段私有的SQL工作区,也就是一段内存区域,用于暂时存放受SQL语句影响到的数据。通俗理解就是将受影响的数据暂时放到了一个内存区域的虚表中,而这个虚表就是游标。 二,作用是什么? 1,大家都知道数据库中的事物可以回滚,而游标在其中起着非常重要的作用,由于对数据库的操作我们会暂 ...
分类:
数据库 时间:
2016-07-20 21:05:38
阅读次数:
170
1. 用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。
2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。
3. 多态性是一个接口多种实现,是面向对象的核心。分为类的多态性和函数的多态性。
4. 多态用虚函数来实现,结合动态绑定。
5. 纯虚函数是虚函数再加上= 0。
6. 抽象类是指包...
分类:
编程语言 时间:
2016-07-16 23:46:56
阅读次数:
493