摘要: 1、以尖括号制定头文件,如下所示:#include 用尖括号来制定文件时,预处理器是以特定的方式来寻找文件,一般是环境中或编译器命令行指定的某种寻找路径。这种设置寻找路径的机制随机器、操作系统、C++实现的不同而不同,要视情况而定。2、以双引号指定文件,如下所示:#include "header... 阅读全文
posted @ 2014-07-29 16:13 江君令 阅读(858) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2014-07-29 14:22 江君令 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 1、描述内存分配方式以及它们的区别?1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处... 阅读全文
posted @ 2014-07-29 14:20 江君令 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 1.重载、覆盖与隐藏1).重载:成员函数具有以下的特征时发生“重载”A.相同的范围(同一个类中)B.函数的名字相同C.参数类型不同(不能进行隐式类型转换)D.Virtual关键字可有可无2).覆盖(也叫“继承”):指派生类函数覆盖基类函数,特征是:A.不同的范围(分别位于基类与派生类中)B.函数名字... 阅读全文
posted @ 2014-07-29 14:18 江君令 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 数据结构中为了存储和查找的方便,用各种树结构来存储文件,本章就浅谈一下各种树的表示方法、特点及各自的用途,本章设计的树结构包括:二叉查找树(二叉排序树)、平衡二叉树(AVL树)、红黑树、B-树、B+树、字典树(trie树)、后缀树、广义后缀树。1、二叉查找树(二叉排序树) (图a)二叉查找树是... 阅读全文
posted @ 2014-07-29 14:16 江君令 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 在UML类图中,常见的有以下几种关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)1.泛化(Generalization)【泛化关系】:是一种继... 阅读全文
posted @ 2014-07-29 14:09 江君令 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 1vector向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储。支持不指定vector大小的存储。STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacituy()函数返回的大小,当超过此分配的空间时再整体重新放分配一块内存存储,这给人以vector可以不指定vecto... 阅读全文
posted @ 2014-07-29 14:08 江君令 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 例1:char ss[100]=”0123456789”; Sizeof(ss)结果为100,ss表示在内存中预分配的大小,100*1; Strlent(ss)结果为10,它的内部实现是用一个循环计算字符串的长度,直到”\0”为止。例2:int ss[100]=”0123456789”; Sizeo... 阅读全文
posted @ 2014-07-29 14:07 江君令 阅读(273) 评论(0) 推荐(0) 编辑
摘要: char*get_str(void){charstr[]={"abcd"};returnstr;} char str[] = {"abcd"};定义了一个局部字符数组,尽管是数组,但它是一个局部变量,返回它的地址肯定是一个已经释放了的空间的地址。 此函数返回的是内部一个局部字符数组str的地址,且函... 阅读全文
posted @ 2014-07-29 14:06 江君令 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 今天上网看C++的一些资料,突然看到虚函数,突然让我回想起继承,覆盖什么的,决定总结一些资料,加上自己的体会写一篇C++中的虚函数(virtual function) 虚函数是C++中用于实现多态(polymorphism)的机制。核心理念就是通过基类访问派生类定义的函数。假设我们有下面的类层次:... 阅读全文
posted @ 2014-07-29 14:05 江君令 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 先要理解class的意思。class应该理解为一种类型,象int,char一样,是用户自定义的类型。(虽然比int char这样build-in类型复杂的多,但首先要理解它们一样是类型)。用这个类型可以来声明一个变量,比如int x, myclass my等等。这样就像变量x具有int类型一样,变量... 阅读全文
posted @ 2014-07-29 14:01 江君令 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 摘要】:本文阐述了静态联编和动态联编的概念和区别,通过具体实例分析了实现动态联编的条件,指出了虚函数是实现动态联编的基础。【关键词】:静态联编;动态联编;虚函数在C++中,联编是指一个计算机程序的不同部分彼此关联的过程。按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。1.静态... 阅读全文
posted @ 2014-07-29 13:59 江君令 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 1. 公有继承当类的继承方式为公有继承时,基类的公有和保护成员的访问属性在派生类中保持不变,而基类的私有成员不可访问。即基类的公有成员和保护成员被继承到派生类中仍作为派生类的公有和保护成员,派生类的其他成员可以直接访问它们;其他外部使用者只能通过派生类的对象访问继承来的公有成员;而无论派生类的成员还... 阅读全文
posted @ 2014-07-29 13:58 江君令 阅读(3354) 评论(0) 推荐(1) 编辑
摘要: 有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:a.引用b.常量c.静态d.静态常量(整型)e.静态常量(非整型) 常量和引用,必须通过参数列表进行初始化。静态成员变量的初始化也颇有点特别,是在类外初始化且不能再带有static关键字... 阅读全文
posted @ 2014-07-29 13:54 江君令 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 在C++中,静态成员是属于整个类的而不是某个对象,静态成员变量只存储一份供所有对象共用。所以在所有对象中都可以共享它。使用静态成员变量实现多个对象之间的数据共享不会破坏隐藏的原则,保证了安全性还可以节省内存。静态成员的定义或声明要加个关键static。静态成员可以通过双冒号来使用即::。在C++中类... 阅读全文
posted @ 2014-07-29 13:50 江君令 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 一些成员函数改变对象,一些成员函数不改变对象。例如:int Point::GetY(){ returnyVal;} 这个函数被调用时,不改变Point对象,而下面的函数改变Point对象:void Point:: SetPt (int x, int y){ xVal=x; yVal=y;} 为了... 阅读全文
posted @ 2014-07-29 13:46 江君令 阅读(228) 评论(0) 推荐(0) 编辑