C++ 多态

2019-10-29 0 条评论 127 次阅读 0 人点赞

多态 《C++ Primer》 C++有三种方式支持多态性: 通过一个隐式转换,从“派生类指针或引用”转换到“其共有基类类型的指针或引用“ Query *pquery = new NameQuery("Glass"); 虚拟函数机制:pquery->eval(); 通过dy…

C++继承

2019-10-23 0 条评论 111 次阅读 0 人点赞

继承 1. 继承的概念及定义 1.1 概念 继承机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类。继承呈现了面向对象程序设计的层次结构, 体现了由简单到复杂的认知过程。以前我们接触的复用都是函数复用,继承是类设计层次…

C++_map&set

2019-10-10 0 条评论 111 次阅读 0 人点赞

1. map map文档 map是关联容器,它按照特定的次序(利用key比较)存储键值key和值value组合而成的元素。 在map中,键值key通常用于排序和唯一的标识元素,而值value中存储与此键值key关联的内容。键值key和值value的类型可能不同,在map内部,key与value通过成…

C++_stack和queue

2019-10-03 0 条评论 121 次阅读 0 人点赞

1. stack stack的介绍 stack文档 template <class T, class Container = deque<T> > class stack; stack是一种容器适配器,用于在具有后进先出操作的上下文环境中,其删除只能从容器的一段进行元素的插入…

C++_deque

2019-10-02 0 条评论 119 次阅读 0 人点赞

deque的文档 deque即双端队列,双端队列是动态大小的序列式容器,其可以向两端进行伸缩。 特定的库可以以不同的方式实现deque,但通常都是一种动态数组。不论在核中情况下,它都允许通过随机访问迭代器直接访问单个元素,可以根据需要动态的伸缩。 deque提供了一些与vector相似的功能,但de…

Linux_gdb使用

2019-09-27 0 条评论 180 次阅读 0 人点赞

程序的发布方式有两种,debug模式和release模式 Linux gcc/g++出来的二进制程序,默认是release模式 要使用gdb调试,必须在源代码生成二进制程序的时候, 加上 -g 选项[重要] (如果在编译时没有加入-g参数,gdb命令也可以运行,但是只能通过run指令跑完程序,查看代…

C++_list

2019-09-26 0 条评论 111 次阅读 0 人点赞

list 1.list介绍 list文档 list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。 list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点通过指针指向其前一个元素和后一个元素。 list与forward_list非常相似…

C++_vector

2019-09-25 0 条评论 112 次阅读 0 人点赞

vector文档 vector是表示可变大小数组的序列容器。 就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。 本质讲,vector使用动态分配数组…

C++_string类 (理解深浅拷贝)

2019-09-22 0 条评论 207 次阅读 0 人点赞

在C语言中,字符串是以'\0'结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问, 十分的不方便。 C++中有一个string类来有效代替C语言中的str系列函数,…

加载更多