- 博客(8)
- 收藏
- 关注
原创 12-4-26关于普通函数指针,类成员函数指针,char(*)[]
1,普通函数指针 例子: 通过上面的代码,我们可以得到函数指针的初始化,调用情况 2,类成员函数指针 我们可以发现,成员函数指针类型初始化,调用是不同于一般的函数指针 3,下面我们重点谈谈char (*p)[3],char p[3] char (*p)[3]定义了一个指向char型的数组的指针,等同于char p[][3],这里p+1,就是第二行的首地址了 c
2012-04-26 10:41:48 1067
原创 12-4-24关于c++的几个类型强转运算符
1.dynamic_cast强制转换运算符:该转换符用于将一个指向派生类的基类指针或引用转换为派生类的指针或引用,注意dynamic_cast转换符只能用于含有虚函数的类,其表达式为dynamic_cast(表达式),其中的类型是指把表达式要转换成的目标类型,比如含有虚函数的基类B和从基类B派生出的派生类D,则B *pb; D *pd, md; pb=&md; pd=dynamic(pb); 最
2012-04-24 16:02:57 606
转载 关于c++中const与c的差异
C++中的const正常情况下是看成编译期的常量,编译器并不为const分配空间,只是在编译的时候将期值保存在名字表中,并在适当的时候折合在代码中.所以,以下代码: #include using namespace std; int main() { const int a = 1; const int b = 2; int array[ a + b ] = {0}; f
2012-04-20 09:13:25 270
转载 12-4-20关于内部连接,外部连接
首先,我们来了解下定义: 内部连接:如果一个名称对编译单元(.cpp)来说是局部的,在链接的时候其他的编译单元无法链接到它。 外部连接:如果一个名称对编译单元来说不是局部的,而在链接的时候其他的编译单元可以访问它,也就是说它可以和别的编译单元交互。 通过对LIB与DLL的讲解,我们可以更方便的理解内部连接与外部连接。 我们了解了一个编译单元(.cpp)编译成obj
2012-04-20 08:50:11 352
转载 12-4-19关于c++动态的概念 | 返回引用的情况
1多态性, 在c++中指具有不同功能的函数可以用同一个函数名,即可以用同一个函数名调用不同内容的函数。向不同的对象发送用一个消息,不同的对象在接收同样的消息,会产生不同的行为(方法)。 从系统实现角度来看。多态性分为两类:静态多态性和动态多态性。 静态多态性:在程序编译时系统就能决定调用哪个函数,因此静态函数有称编译时的多态性(实质上是通过函数的重载实现)。例如:函数的重载和运算符重
2012-04-19 10:02:21 936
转载 12-4-18关于虚析构函数的剖析
1先看代码 这是一个有内存泄露的例子,因为当删除pCFun的时候,会调用CFunction的析构函数,而不会调用其派生类的析构函数,所以导致内存泄露。 解决办法就是使基类的析构函数为虚函数。 虚析构函数就是为了解决这一问题:基类的指针指向派生类对象,并用基类的指针删除派生类对象。 如果某个类不包含虚函数,那么是表示它将不作为一个基类来使用。当一个类不准备作为基类使用,使用虚
2012-04-18 10:32:34 604
原创 12-4-16关于大端输出,小端输出,句柄类
1看题目 这里只是将指针进行强转了。不是本题讨论的重点,此题答案为33221100 我的编译器为vc,这里我想表达的是大端输出的概念,就是高位地址的内容放到低位了。 本来00 11开始的是从低位到高位的顺序这样排列,当指针为int型后,四个字节的内容进行融合,将原本高位的地址放在四个字节的首,这样我们指针读取的时候就当然是从高位读取的。结果就是33221100。本题在xp中,是小端的
2012-04-16 13:18:37 1268
原创 12-4-13关于方正的笔试
1.在函数内部里面定义某局部变量为static,则在程序运行的过程中,调用其,并初始化,而后再次进行初始化时则无效。依旧保持先前的数值 2.关于拷贝构造函数调用的次数。直接见题目 A function(A a){ return a; } void main(){ A a; A b=function(a); } 我们来分析下 构造函数,拷贝构造函数调用的情况。 所谓拷贝构造函数(
2012-04-13 09:23:23 968
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人