![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
IT
文章平均质量分 73
LvDoris
华中科技大学
展开
-
数组中子数组最大值----分治思想
#includeusing namespace std;// 求数组中子数组的最大值 // 参数1:数组,参数2:数组起始位置,参数3:数组尾位置的下一个位置int MaxSum(int *,int,int); int SelMaxValue(int,int,int); // 选择最大值int Find_Max_Crossi原创 2015-10-17 21:13:40 · 497 阅读 · 0 评论 -
C++基础编程----含有可变形参函数
省略符形参省略符形参仅仅是用于C和C++通用的类型,特别注意的是,大多数类类型的对象在传递时给省略符形参时是无法正确拷贝的。省略号的优先级别最低,所以在函数解析时,只有当其它所有的函数都无法调用时,编译器才会考虑调用省略号函数的。举例:#include // 要处理不定参数的函数要包含头文件:#include #includeusing原创 2015-10-25 08:49:39 · 657 阅读 · 0 评论 -
C++ 重载、覆盖(重写)、隐藏
重载、覆盖(重写)、隐藏1.重载:重载从overload翻译过来,是指同一可访问区内被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数,重载不关心函数返回类型。示例代码如下:classA{ public: voidtest(原创 2015-11-14 10:54:56 · 342 阅读 · 0 评论 -
C++基础编程----3.1数组
数组数组是一种类似于标准库类型vector的数据结构,它们都可以存放同种类型的对象,对象本身没有名字,需要根据位置进行访问。不同之处在于,数组大小固定,注意:如果不清楚元素的确切个数,请用vector。 1.定义初始化数组 1. unsigned cnt=42; string bad[cnt];原创 2015-10-14 18:40:01 · 474 阅读 · 0 评论 -
C++基础编程----3.2多维数组
多维数组1.指针和多维数组 1.由多维数组名转换得来的指针实际上是指向第一个内层数组的指针 int ia[3][4]; int (*p)[4]=ia; // p指向含有4个整数的数组 2. int a原创 2015-10-14 21:17:28 · 507 阅读 · 0 评论 -
C++基础编程----5.1try和异常处理
try和异常处理 异常是存在于运行时的反常行为,这些行为超出了函数的正常功能。 当程序的某部分检测到一个它无法处理的问题时,需要异常处理。 throw try catch子句1. throw表达式 throw表达式引发一个异常,表达式的类型就是抛出异常的类型。 if(item1.isbn()==item2.isbn()) throw runtime原创 2015-10-29 16:51:01 · 445 阅读 · 0 评论 -
C++基础编程----6.1函数
函数6.1函数基础 return: 1.返回值2.将控制权从被调用的函数转回到主调函数。 函数的返回类型不能是数组类型或者函数类型,但可以是指向数组的指针或者指向函数的指针。 int(*fun(int,int))[10]; // 返回指针数组 int(&fun(int,int))[10]; // 返回数组的引用 自动对象: 把只存在于块执行原创 2015-10-29 16:53:53 · 449 阅读 · 0 评论 -
C++基础编程----6.2函数
函数1.引用返回的是左值,可以赋值2.返回数组指针 int (*func(int i))[10]; int even[]={0,2,4,6,8}; int odd[]={1,3,5,7,9}; decltype(odd) *arrptr(int i) // decltype并不负责把数组类型转换成对应的指针类型,所以它的结果仍然是个数组 返回 数原创 2015-10-29 16:55:38 · 531 阅读 · 0 评论 -
C++堆和栈的分配
C++堆和栈的分配栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等,其操作方式类似于数据结构中的栈。堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,注意它与数据结构中的堆是两回事,分配方式类似于链表。全局区(静态区)(static)—全局变量和静态变量的存储是放在一块的,初始化的全局变量和原创 2015-10-31 09:46:11 · 490 阅读 · 0 评论 -
C++new实现机制
C++new实现机制1.new和delete最终调用malloc和free2.new操作数据类型两种: 2.1基本数据类型 int *p=new int; 00E8139E push 4 00E813A0 call operator new (0E8117原创 2016-04-24 16:19:52 · 2668 阅读 · 0 评论 -
C++基础编程----2.3标准库类型vector
标准库类型vector1.1vector概念 (1)标准库类型vector表示对象的集合,其中所有的对象的类型都相同。集合中每个对象都有与之对应的索引号,索引用于访问对象。vector因为能容纳多个对象,所以又称为“容器”。 (2)想使用vector,必须包含相应的头文件:原创 2015-10-04 19:14:46 · 572 阅读 · 0 评论 -
C++基础编程----2.2标准库类型string
标准库类型string原创 2015-10-03 17:04:56 · 651 阅读 · 0 评论 -
C++基础编程----4.1表达式
表达式1.定义 表达式是由一个或多个运算对象组成,对表达式求值将得到一个结果。字面值和变量是最简单的表达式,其结果就是字面值和变量的值。将运算符和多个运算对象组合起来构成复杂的表达式。2.基本概念 2.1 函数调用是个复杂的运算符,它对运算对象的数量没有限制。 2.2 使用重载运算符,运算对象类型和返回值都是由该运算符原创 2015-10-16 20:48:56 · 646 阅读 · 0 评论 -
C++基础编程----4.3表达式
表达式1.位运算符 1.1 一种名为bitset的标准库类型可以表示任意大小的二进制位集合。 1.2 运算符:~ > & | ^(异或) 1.3 符号位如何处理没有明确的规定,强烈建议将位运算符用于处理无符号类型。 1.4 不要将位运算符和逻辑运算符(&&、||、!)搞混原创 2015-10-17 07:58:20 · 471 阅读 · 0 评论 -
C++基础编程----4.2运算符
运算符1.算术运算符 1.1 bool b=true; bool b2=-b; // 对大多数运算符来说,布尔类型运算对象将提升到整型运算对象,-b=-1,-1为非0,所以转换为true初始化b2. 1.2 溢出和其他算术运算异常 溢出就是该类型计算的结原创 2015-10-17 07:57:25 · 467 阅读 · 0 评论 -
数组中求最大最小值
#include#includeusing namespace std;// 先判断数组是含有奇数偶数个元素,如果偶数个元素,将A[0]、A[1]最大最小值分别给Max、Min,从第二个元素两个两个进行比较,最大值给// Max 最小值给Min// 如果为奇数个元素,将A[0]先分别置为最大最小值,两个元素两个元素比较后,较大的和Max比较,较小的和Min进行比较/原创 2015-10-17 21:12:11 · 1025 阅读 · 0 评论 -
C++基础编程----1.2程序创建技巧
程序创建的技巧原创 2015-09-29 15:09:36 · 546 阅读 · 0 评论 -
C++编程基础----2.1变量和基本类型
const限定符 指针 引用 预处理器原创 2015-10-02 20:21:09 · 545 阅读 · 0 评论 -
C++基础编程---1.3模糊概念
main函数 编译器 输入输出原创 2015-10-01 10:14:08 · 511 阅读 · 0 评论 -
C++基础编程----1.1预备知识
面向对象编程 可移植性原创 2015-09-29 14:56:37 · 627 阅读 · 2 评论 -
C++基础编程----2.4迭代器
迭代器介绍我们已经知道可以使用下标运算符来访问string对象的字符或者vector对象的元素,还有一种更为通用的机制来实现相同的目的,这就是迭代器。 类似于指针类型,迭代器也提供了对对象的间接访问。使用迭代器可以访问某个元素,也可以从一个元素移动到另一个元素。迭代器和指针类似,可进行类比。1.使用迭代器 1.1获取迭代器有专门的类型同时原创 2015-10-05 10:09:14 · 497 阅读 · 0 评论 -
C++ new分配失败运行机制
new分配失败运行机制原创 2016-04-24 16:39:44 · 526 阅读 · 0 评论