![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++基础
文章平均质量分 74
happyzhuque
这个作者很懒,什么都没留下…
展开
-
volatile关键字的作用
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic转载 2012-10-27 14:11:50 · 3621 阅读 · 0 评论 -
浅谈C++多态性
C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。 多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphisn),字面意思多种形状。 C++多态性是通过虚函数来实现的,虚函数允许子类重新定转载 2013-11-16 21:43:48 · 494 阅读 · 0 评论 -
malloc 和 delete的区别
概述: malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 区别: 1). malloc是C++/C语言的标准库函数,new/delete是C++的运算符。 2). 对非内部数据类型的对象而言,malloc不能完成对象的初始化,new能够完成对象的初始化 3. 内存泄漏对于malloc或者new都可以检查出转载 2012-10-28 13:11:14 · 1221 阅读 · 0 评论 -
C++四种强制类型转换
1.C++有几种强制类型转换?分别是什么? C++的四种强制类型转换,所以C++不是类型安全的。分别为:static_cast , dynamic_cast , const_cast , reinterpret_cast 2.为什么使用C风格的强制转换可以把想要的任何东西转换成合乎心意的类型。那为什么还需要一个新的C++类型的强制转换呢? 新类型的强制转换可以提供更好转载 2012-10-27 14:15:38 · 227 阅读 · 0 评论 -
堆和栈的区别
1.申请方式不同 Stack由系统自动分配,而heap需要程序员自己申请,并指明大小。 2. 申请后系统的响应不同 Stack:只要栈的剩余空间大于申请空间,系统就为程序提供内存,否则将抛出栈溢出异常Heap:当系统收到程序申请时,先遍历操作系统中记录空闲内存地址的链表,寻找第一个大于所申请空间的堆结点,然后将该结点从空间结点链表中删 除,并将该结点的空间分配给程序。另外转载 2012-10-27 14:16:37 · 176 阅读 · 0 评论 -
多重继承与虚函数表(虚函数二)
一 多重继承 1) 代码: Code #include iostream> using namespace std; class B1 { public: int x; virtual void v1(){ cout "B1::v1" endl; } void f1(){cout "B1::f1" endl; } }; cla转载 2012-10-26 15:36:28 · 300 阅读 · 0 评论 -
大端法、小端法、网络字节序
关于字节序(大端法、小端法)的定义 《UNXI网络编程》定义:术语“小端”和“大端”表示多字节值的哪一端(小端或大端)存储在该值的起始地址。小端存在起始地址,即是小端字节序;大端存在起始地址,即是大端字节序。 也可以说: 1.小端法(Little-Endian)就是低位字节排放在内存的低地址端即该值的起始地址,高位字节排放在内存的高地址端。 2.大端法(Big-Endia转载 2012-10-27 14:09:23 · 485 阅读 · 0 评论 -
虚继承与虚函数表(虚函数三)
一 虚继承 1) 代码: Code #include iostream> using namespace std; class B { public: int i; virtual void vB(){ cout "B::vB" endl; } void fB(){ cout "B::fB" endl;} }; class D转载 2012-10-26 15:38:06 · 1075 阅读 · 0 评论 -
单继承与虚函数表(虚函数一)
一 单继承 1) 代码: Code #include iostream> using namespace std; class A { public: void f1(){cout "A::f1" endl;} void f2(){cout "A::f2" endl;} virtual void v1(){cout "A::v1"转载 2012-10-26 15:34:50 · 253 阅读 · 0 评论 -
static关键字的作用
面试题:static有什么作用? 答:在C语言中,static主要定义全局静态变量,定义局部静态变量,定义静态函数 一、 定义全局静态变量 :在全局变量前面加上关键字static,该全局变量变成了全局静态变量。全局静态变量有以下特点: (1) 在全局数据区内分配内存 (2) 如果没有初始化,其默认值为0 (3) 该变量转载 2012-10-25 09:41:06 · 227 阅读 · 0 评论 -
C++类中的static数据成员,static成员函数
C++类中谈到static,我们可以在类中定义static成员,static成员函数!C++primer里面讲过:static成员它不像普通的数据成员,static数据成员独立于该类的任意对象而存在,每个static数据成员是与类关联的对象,并不与该类的对象相关联!这句话可能比较拗口,其实可以这么理解:每个static数据成员可以看成是类的一个对象,而不与该类定义的对象有任何关系!下面我们就来具体转载 2013-12-09 22:49:06 · 341 阅读 · 0 评论