C++基础
文章平均质量分 89
wvtear
这个作者很懒,什么都没留下…
展开
-
C++的发展,特点和源程序构成
C++的发展,大家都知道C++是从C语言演变而来的,它扩充了C,又保持了与C的兼容。C++是美国贝尔实验室的Bjarne Stroustrup博士以及其同事与20世纪80年代初在C语言的基础上开发成功的。最初的C++被称为“带类的C”,1983年正式取名为C++。1985年有Bjarne Stroustrup博士编写的《C++程序设计语言》一书的出版,标志着C++1.0版本的诞生,此后贝尔实验室又转载 2013-06-03 00:21:16 · 799 阅读 · 0 评论 -
C++之多态性与虚函数
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/11/2134673.html 面向对象程序设计中的多态性是指向不同的对象发送同一个消息,不同对象对应同一消息产生不同行为。在程序中消息就是调用函数,不同的行为就是指不同的实现方法,即执行不同的函数体。也可以这样说就是实现了“一个接口,多种方法”。 从实现的角度来讲,多态可转载 2013-06-03 10:13:12 · 510 阅读 · 0 评论 -
C++之运算符重载(2)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/13/2137033.html 上一节主要讲解了C++里运算符重载函数,在看了单目运算符(++)重载的示例后,也许有些朋友会问这样的问题。++自增运算符在C或C++中既可以放在操作数之前,也可以放在操作数之后,但是前置和后置的作用又是完全不同的(q前置运算符:先加1,再赋值;后置转载 2013-06-03 10:18:43 · 512 阅读 · 0 评论 -
C++运算符重载补充之不同数据间的类型转换
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/14/2137790.html 我们在使用重载的运算符时,往往需要在自定义数据类型和系统预定义的数据类型之间进行转换,或者需要在不同的自定义数据类型之间进行转换。今天就来讲讲C++中数据类型的转换。 1.对于系统的预定义基本类型数据,C++提供了两种类型转换方式:隐式类型转换和转载 2013-06-03 10:20:26 · 552 阅读 · 0 评论 -
C++之模板
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/15/2138705.html 有以下这样3个求加法的函数:int Add(int x,int y) { return x+y; } double Add(double x,double y) { return x+y; } long Add(long x,lon转载 2013-06-03 10:22:20 · 469 阅读 · 0 评论 -
C++之预定义类型IO格式控制
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/17/2142010.html 在C语言里,我们可以通过函数printf和scanf来进行格式化控制。而在C++中仍然包含了前者,但还提供了以下两种格式控制的方法:(1)使用流成员函数进行格式控制;(2)使用预定义操作符进行格式控制。下面我来一一介绍: 1.流成员函数主要是转载 2013-06-03 10:26:59 · 661 阅读 · 0 评论 -
C++之文件IO操作流
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/18/2144247.html 前两节介绍了C++的IO流类库,标准设备IO操作流中部分预定义流对象的成员函数以及IO格式控制。那今天我将继续介绍关于C++中的流操作内容——文件IO操作流fstream。并会着重讲解C++是如何对文件进行操作的。 文件指存放在外部介质上的数据的集合转载 2013-06-03 10:28:49 · 822 阅读 · 0 评论 -
C++之异常处理
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/19/2145349.html 程序中的错误分为编译时的错误和运行时的错误。编译时的错误主要是语法错误,比如:句尾没有加分号,括号不匹配,关键字错误等,这类错误比较容易修改,因为编译系统会指出错误在第几行,什么错误。而运行时的错误则不容易修改,因为其中的错误是不可预料的,或者可以转载 2013-06-03 10:30:00 · 483 阅读 · 0 评论 -
C++之命名空间(End Chapter)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/20/2146917.html 今天这一节,注意要讲C++中的命名空间和头文件的命名规则。也是C++这一基础系列的最后一节。首先感谢在学习C++的一路上,有这么多关注这系列的博友们的陪伴和帮助。正因为有了你们的建议和指导,使我对C++有了更深的认识和更大的兴趣。这个系列结束之后,转载 2013-06-03 10:30:52 · 507 阅读 · 0 评论 -
C++之标准设备IO操作流
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/16/2141367.html 每种语言系统都会提供IO操作的类库,用于对预定义类型数据进行输入输出的操作。C++也是如此,它是以字节流的形式实现的。在输入操作时,字节流从输入设备(键盘、磁盘)流向内存;在输出操作时,字节流由内存流向输出设备(显示器、打印机);字节流可以是ASCII转载 2013-06-03 10:25:02 · 609 阅读 · 0 评论 -
unix环境C编程之日期时间转换
1、理清概念 1.1、日历时间: 含义:国际标准时间1970年1月1日00:00:00以来经过的秒数。 数据类型:time_t。实际上是long的别名。 1.2、tm结构时间: 含义:结构化存放时间的数据结构,方便查看。ANSI C标准称使用tm结构的这种时间表示为分解时间(broken-down time) 数据类型: struct tm {转载 2013-08-22 15:25:03 · 635 阅读 · 0 评论 -
C++之继承与派生(3)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/10/2133843.html 大家都知道C#和C++重要的区别之一就是,C#支持单一继承和多接口继承,而C++则允许多继承。至于哪一个比较好,在这里就不去评价了。今天所要说的重点内容就是C++的多重继承以及虚基类。 1.前一节我介绍了有关单继承的内容,实际上,一个派生类可转载 2013-06-03 10:10:55 · 601 阅读 · 0 评论 -
C++类与对象的进一步讨论(2)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/06/2129329.html 我们经常会看到一个类中可能会出现另一个类的对象作为它的数据成员,既然是对象,那么就会涉及到这个对象成员要初始化的问题。而程序中各种数据的共享,在一定程度上破环了数据的安全性。C++中有什么方法可以保证数据共享又防止数据改动。另外除以上两个问转载 2013-06-03 00:45:17 · 560 阅读 · 0 评论 -
C++对C语言的非面向对象特性扩充(1)
转载至:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/06/26/2090823.html 我将分3篇来介绍C++相对于C在非对象特性上的扩充,今天要讲的是C++在注释,输入输出,局部变量说明的扩充,以及const修饰符与C中的#define的比较。 1.C++注释除了包括原有C的块注释/*...*/,还提供了行注释//,另外要注意的是对于转载 2013-06-03 00:23:45 · 621 阅读 · 0 评论 -
C++对C语言的非面向对象特性扩充(3)
转载至:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/09/2101942.html 今天要讲的是C++作用域运算符"::",强制类型转换的扩充,C++中相对于C中malloc和free函数的运算符new和delete,以及C++对C的一个重要扩充:引用(reference);这也是C++对C语言的非面向对象特性扩充系列的最后一节。转载 2013-06-03 00:30:16 · 533 阅读 · 0 评论 -
C++之类与对象(1)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/17/2108445.html 下个阶段,我将讲解C++中面向对象的部分,也是C++对C语言改进的最重要的部分。以前C++也被叫做是"带类的C"。今天主要讲类的构成,成员函数以及对象的定义和使用。 1.其实这一节,对于用C#开发的人来说,简直就是驾轻就熟啊。C++类的构成,我想转载 2013-06-03 00:34:03 · 597 阅读 · 0 评论 -
C++之类与对象(2)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/24/2115041.html 接着上一节,今天讲C++中类的构造函数与析构函数,对象的赋值与复制. 1.用过C#语言的人,都知道构造函数是一种特殊的成员函数,它主要用于对对象分配空间,进行初始化。构造函数的名字必须与类名相同。可以有任何类型的参数,但不返回任何值,是在建立转载 2013-06-03 00:37:27 · 554 阅读 · 0 评论 -
C++之类与对象(3)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/29/2121528.html 在上篇的最后的实例程序代码中,我所写的成员函数中的参数变量名和数据成员名一样,为了编译时不发生错误,我在数据成员的前面加上"类名::"以区分。其实还有另外一种方法可以来加以区分,那就是C++中的自引用指针this。今天就讲一下C++中的this以及转载 2013-06-03 00:38:38 · 544 阅读 · 0 评论 -
C++类与对象的进一步讨论(1)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/31/2122615.html 上一系列主要讲了C++中的类和对象的一些基础概念,但也是面向对象程序设计中重要的一部分。接下来,我将在上一系列的基础上对C++的类与对象做进一步的讨论。从而更加熟悉类和对象在编程中的应用和进一步理解其作用。那么今天的主要讲的C++类与对象中的静态成转载 2013-06-03 00:41:31 · 618 阅读 · 0 评论 -
C++之继承与派生(1)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/08/2130817.html 继承是面向对象程序设计中的重要特性,是软件复用的一种形式。其实继承和派生就是同一种概念的不同说法罢了,通常我们说子类继承父类,父类派生出子类。说实话,学习和了解了C++的继承与派生后,发现我对面向对象中的继承与派生有了更深刻的理解。在更加深入了解C转载 2013-06-03 10:05:59 · 485 阅读 · 0 评论 -
C++之继承与派生(2)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/09/2131942.html 上一节,主要讲解了有关派生类继承方式的内容。那么今天就来说说派生类的构造函数和析构函数,以及怎么样在派生类中显式访问积累成员。大家都知道,基类的构造函数和析构函数是不能被继承的,因此我们必须在派生类的构造函数中对基类的构造函数所需要的参数进行设置。同样转载 2013-06-03 10:07:37 · 499 阅读 · 0 评论 -
C++之运算符重载(1)
转载自:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/12/2136598.html 在前一节中曾提到过,C++中运行时的多态性主要是通过虚函数来实现的,而编译时的多态性是由函数重载和运算符重载来实现的。这一系列我将主要讲解C++中有关运算符重载方面的内容。在每一个系列讲解之前,都会有它的一些基础知识需要我们去理解。而运算符重载的基转载 2013-06-03 10:16:13 · 546 阅读 · 0 评论 -
C++对C语言的非面向对象特性扩充(2)
转载至:http://www.cnblogs.com/CaiNiaoZJ/archive/2011/07/02/2096483.html 上一篇随笔写了关于C++在注释,输入输出,局部变量说明的扩充,以及const修饰符与C中的#define的比较,也得到了几位学习C++朋友们的帮助讲解,十分感谢,我也希望欢迎有更多学习C++的朋友一起来讨论,这样大家都能共同进步。那么,今天这篇要讲的是C+转载 2013-06-03 00:25:36 · 507 阅读 · 0 评论 -
mmap详解
共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式, 因为进程可以直接读写内存,而不需要任何 数据的拷贝。对于像管道和消息队列等通信方式,则需要在内核和用户空间进行四次的数据拷贝,而共享内存则 只拷贝两次数据: 一次从输入文件到共享内存区,另一次从共享内存区到输出文件。实际上,进程之间在共享内 存时,并不总是读写少量数据后就解除映射,有新的通信时,再重新建立共享内存区域。而是保持共原创 2013-09-18 17:14:40 · 511 阅读 · 0 评论