随笔分类 - C++基础知识
1
摘要:编写程序过程中难免出错。程序错误可分为三类,它们分别是语法错误、语义错误(或称逻辑错误)和运行时错误。针对不同错误,C++语言具有不同的解决办法,最终保证所开发的程序能够正确、稳定地运行。针对程序运行时的错误C++设计了专门的异常处理机制,即try-catch机制。C++标准库为异常处理机制提供多种
阅读全文
摘要:C++语言全盘继承了C语言的标准库,其中包含非常丰富的系统函数,例如输入/输出函数、数学函数、字符串处理函数和动态内存分配函数等。C++语言另外又增加了一些新的库,我们把C++语言新增的这部分库称为C++标准库。C++语言的模板技术包括函数模板和类模板。模板技术是一种代码重用技术,函数和类是C++语
阅读全文
摘要:派生类继承了基类除构造函数和析构函数外的所有数据成员和函数成员。派生类和基类存在一种特殊关系:派生类是一种基类,具有基类的所有功能。面向对象的程序设计利用派生类和基类之间的特殊关系,常常将派生类对象当作基类对象使用,或者用基类来代表派生类,其目的是提高代码可重用性。由于C++对数据类型一致性要求比较
阅读全文
摘要:C++语言中有一些多义词,例如表示静态的关键字static,将static应用在变量、函数或类成员等不同场合,它所表达的含义不一样。源程序中相同的程序元素可能会具有不同的语法解释,C++语言称这些程序元素具有多态性。C++语言有多种不同的多态形式,常见的有关键字多态、重载函数多态、运算符多态、对象多
阅读全文
摘要:遗传与变异是生物进化的基础,面向对象的程序设计借鉴了这种机制,为类代码提供一种新的,也是最为重要的一种代码重用形式,这就是类的继承与派生。设计新类的时候可以继承已有的类。这个已有的类被称为基类或父类,设计出来的新类是对基类继承来的功能进行升级改造,这被称为对基类进行派生。通过继承与派生得到的新类称为
阅读全文
摘要:一、C++重用类代码 “程序=算法+数据”。程序中的数据包括原始数据、中间结果和最终结果。C++语言通过定义变量语句来申请内存空间,定义变量语句是与数据相关的代码,即数据代码。C++通过定义函数来描述算法模块,函数是与算法相关的代码,即算法代码。 在面向对象的程序设计中,类是重用“数据代码+算法代码
阅读全文
摘要:友元是一个与访问控制权限相关的概念。C++语言可以在定义类的时候声明友元,向类外的某些函数或类定向开放类中的所有成员。被类声明为友元的函数称为该类的友元函数,被声明为友元的类称为该类的友元类。 一、友元函数(可以设为类的内联函数) 友元函数的语法形式: class 类名 { . . . frined
阅读全文
摘要:常变量、常对象、常引用、指向常对象或常变量的指针等在定义时都使用了const关键字,这是C++语言引入的一种数据保护机制,称为const数据保护机制。例如通过const关键字主动地将被调函数形参进行限定,限定被调函数不能修改主调函数传递过来的数据。 下面通过一个出租车类(Taxi),更好的理解常成员
阅读全文
摘要:本篇文章将介绍对象数组,对象的动态分配以及对象在函数中的应用。 一、对象数组 1、对象数组的定义和初始化 定义对象数组与定义普通数组的语法形式基本相同。如定义一个Square obj[3];表示一个正方形类的对象数组,数组元素为三个。将该数组初始化:Square[3]={Square(2),Squa
阅读全文
摘要:面向对象程序设计在结构化程序设计的基础上,引入了抽象、封装、继承和多态的思想。 面向对象程序设计将客观世界中的事物称为一个个具体客观对象。将具有相同数据模型的客观对象归纳成一类,这就是面向对象程序设计中的分类,也叫抽象。抽象得到的数据模型称为类,其中包含数据成员(属性)和函数成员(方法)。 一、类与
阅读全文
摘要:程序员可以根据需要为基本数据类型赋别名或基于一些基本数据类型定义新的复杂数据类型,这些类型被统称为自定义数据类型。C++语言常用的自定义数据类型有枚举、联合体、结构体等。 一、类型定义typedef 1、为基本数据类型赋别名 typedef unsigned char AGE;//定义类型名AGE,
阅读全文
摘要:C++语言预先编写了很多常用函数提供给广大程序员使用,这些函数被统称为系统函数。C++语言全盘继承了C语言的标准C库,另外又增加了一些新的库(更多的是系统类库),这些新库被统称为C++标准库。 一、C语言系统函数 1、输入/输出函数(头文件<stdio.h>) 1)格式化输入函数scanf int
阅读全文
摘要:本篇文章主要介绍C++语言中5中特殊形式的函数,分别是带默认形参值的函数、重载函数、内联函数、带形参和返回值的主函数以及递归函数。 一、带默认形参值的函数 如果函数的形参在多数情况下都可以取某个固定的值,程序员可以在定义函数或声明函数原型时将该值指定为形式参数的默认值,这就是带默认形参值的函数。调用
阅读全文
摘要:一、多文件结构的源代码组织 一个C++程序开发工程(project)可以包含多个源程序文件,一个源程序文件(.cpp)可以包含多个函数。一个函数只能集中放在一个源程序文件中,不能将其定义代码拆开存放在不同文件中。一个程序开发工程可以包含很多函数,但只能有一个主函数,其中函数名必须为main。 使用编
阅读全文
摘要:一、函数间参数传递的三种方式 1、值传递 主调函数:swap(x,y); 被调函数:void swap(int a,int b); 值传递特点分析: 值传递只是将主调函数中实参的值传递给被调函数的形参,通常用于将主调函数中原始数据传递给被调函数。被调函数修改形参中的数据,修改的只是数据副本,不会影响
阅读全文
摘要:1、指针运算 利用数组元素在内存中连续存储的特点,通过加减运算(算术运算)修改地址值可以让指针变量指向不同的数组元素;通过比较地址值的大小(关系运算),可以确定不同数组元素之间的位置次序。指针类型就是地址类型,凡是涉及内存地址的运算统称为指针运算。 下面列举几种通过改变指针指向的语句: int a[
阅读全文
摘要:1、引用 C++语言允许为已定义的变量起一个别名,称为变量的引用名。引用名看起来像是一个变量名,但它是一种特殊变量,称为引用变量或简称为引用。引用和变量于其引用的变量共用一个内存单元,定义引用变量时不在单独分配内存空间。 引用类型 &引用变量名 = 被引用变量名; 语法说明: 引用类型是引用变量的数
阅读全文
摘要:C++根据功能和用途将运算符分为算数运算符、位运算符、关系运算符和逻辑运算符等不同类型。四种不同运算符的优先级从大到小依次为算—位—关—逻。 一、算数运算符 1、加减乘除(+ - * /) 加减乘除位常识不在详谈,主要讲解一下在进行加减乘除是的数据类型转换。 1)、强制转换 (stort)32指定3
阅读全文
摘要:一、基本类型的大小及范围的总结(以下所讲都是默认在32位操作系统下):字节:byte;位:bit。1.短整型short:所占内存大小:2byte=16bit;所能表示范围:-32768~32767;(即-2^15~2^15-1) unsigned short:所占内存大小:2byte=16bit;所
阅读全文
1