随笔分类 -  C/C++编程基础

摘要:面向对象的三大特性 此文只是简单介绍一下三大特性 详细介绍在: 封装:http://www.cnblogs.com/52why/p/7631381.html 继承:http://www.cnblogs.com/52why/p/7629339.html 多态:http://www.cnblogs.co 阅读全文
posted @ 2017-10-07 14:37 红雨520 阅读(490) 评论(0) 推荐(0) 编辑
摘要:下面列举了Dev-C++下基本类型所占位数和取值范围: 基本型 所占位数 取值范围 输入符举例 输出符举例 -- -- char 8 -2^7 ~ 2^7-1 %c %c、%d、%u signed -- char 8 -2^7 ~ 2^7-1 %c %c、%d、%u unsigned -- char 阅读全文
posted @ 2017-10-07 14:30 红雨520 阅读(363) 评论(0) 推荐(0) 编辑
摘要:C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。本篇博客主要介绍C++中函数重载机制和运算符重载机制。 重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同(即参数个数或参数顺序不同)。当您调用一个 阅读全文
posted @ 2017-10-06 13:05 红雨520 阅读(438) 评论(0) 推荐(0) 编辑
摘要:C++ 三大特性之封装 本篇博客主要介绍C++ 的封装机制。在本篇博客中,简单介绍了封装的相关概念以及在C++ 中实现封装的基本手段。 什么是封装? 封装: 封装可以隐藏实现细节,使得代码模块化封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。在面向对象编程上可理解为:把客观事物封装成抽 阅读全文
posted @ 2017-10-06 12:39 红雨520 阅读(690) 评论(0) 推荐(0) 编辑
摘要:C++ 三大特性之多态 C++ 的三大特性,封装,继承,多态。封装可以使得代码模块化,继承可以扩展已存在的代码,而多态的目的则是为了接口重用。本篇博客主要介绍C++中多态的相关概念及使用方法。 概念 多态(Polymorphisn) 多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术, 阅读全文
posted @ 2017-10-06 12:37 红雨520 阅读(269) 评论(0) 推荐(0) 编辑
摘要:继承 继承:类的继承,就是新的类从已有类那里得到已有的特性。原有的类称为基类或父类,产生的新类称为派生类或子类。 基本语法 派生类的声明: class 派生类名:继承方式 基类名1, 继承方式 基类名2,...,继承方式 基类名n { 派生类成员声明; }; View Code 在 c++ 中,一个 阅读全文
posted @ 2017-10-05 16:13 红雨520 阅读(190) 评论(0) 推荐(0) 编辑
摘要:C++ 11中的多线程技术 C++11 新标准中引入了四个头文件来支持多线程编程,他们分别是 <atomic> ,<thread>,<mutex>,<condition_variable>和<future>。 <atomic>:提供原子操作功能,该头文主要声明了两个类, std::atomic 和 阅读全文
posted @ 2017-10-05 15:39 红雨520 阅读(290) 评论(0) 推荐(1) 编辑
摘要:C++ 多线程 本文主要讲一下C++多线程 线程好处 ·使用线程可以把占据长时间的程序中的任务放到后台去处理 ·程序的运行速度可能加快 可以释放一些珍贵的资源如内存占用等等。 但是多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多 阅读全文
posted @ 2017-10-05 15:35 红雨520 阅读(8720) 评论(0) 推荐(0) 编辑
摘要:顺序容器的种类有:vector,list、deque 顺序容器适配器: stack //先进后出 栈 queue //先进先出 队列 priority_queue //也优先管理级的优先队列 1.头文件 2.定义 3.初始化 (以vector类型为例) 注意:在初始化时,不同类型的容器之间 不能进行 阅读全文
posted @ 2017-09-25 13:06 红雨520 阅读(1645) 评论(0) 推荐(0) 编辑
摘要:在平常敲代码的时候 一般的题目会说明题目数据最大是多少 这时候 我可以把需要使用的数组按最大值开空间 但是在一些时候题目可能并不会告诉你最大值 它直接就是先输入一个n 然后输入n个数据 可不告诉你n的最大值 简单来说 就是 :普通的数组在编译的时候 我们就需要知道数组的大小 而动态数组的话就不需要 阅读全文
posted @ 2017-09-21 16:46 红雨520 阅读(623) 评论(0) 推荐(0) 编辑
摘要:指针 这东西对于初学者来说 指针通常是比较难以理解的 在使用指针的时候 有时产生的调式问题连富有经验的程序员都觉得头疼 然而 指针不管是在C语言 还是 C++中 指针都是一个非常重要的组成部分 具体来说 指针保存的是另一个对象的地址 上图中 第二条语句定义了一个指向string类型的指针str 并初 阅读全文
posted @ 2017-09-21 13:29 红雨520 阅读(119) 评论(0) 推荐(0) 编辑
摘要:1.bitset的声明 2.bitset对象的定义和初始化 可以如下声明一个该类型变量: 初始化bitset的方法 我们在使用的时候也是可以使用string类型去初始化bitset的值 不过要求string的值为1与0 还有一点需要注意的就是: string对象和bitset对象之间是反向转化的 以 阅读全文
posted @ 2017-09-20 20:45 红雨520 阅读(284) 评论(0) 推荐(0) 编辑
摘要:1.vector基础 vector是同一类型对象的集合 每一个对象都对应了一个整数的索引值 和string一样 我们在使用vector之前 都要包含相应的头文件 vector的定义 2.vector的定义与初始化 3.vectot的增长 vector对象的重要属性在于 vector可以在运行时高速的 阅读全文
posted @ 2017-09-20 19:23 红雨520 阅读(193) 评论(0) 推荐(0) 编辑
摘要:在学习C++之前 一般都是学过了C语言了 在C语言中 我们对字符串进行保存操作 使用的是char[] 但是在C++中 string比char[]的使用更为频繁 常见 下面稍微讲一下我对于string的认知 1.与其他的标准库类型一样 用户程序需要使用String类型对象 就必须包含相关的头文件 (为 阅读全文
posted @ 2017-09-20 16:38 红雨520 阅读(6085) 评论(0) 推荐(0) 编辑
摘要:我们在平常的编程中,时常需要为一些属性定义一组可以选择的值,比如文件打开的状态可能会有三种:输入 输出和追加 我们一般情况下记录这些状态是让每一个状态和一个常数相对应 比如 这个方法虽然也是可以得,不过它有一个明显的缺点就是 没有指出这些值是相关联的 而C++中的 枚举 提供了一种替代的方法 不但可 阅读全文
posted @ 2017-09-20 12:38 红雨520 阅读(2199) 评论(0) 推荐(0) 编辑
摘要:全排列函数 next_permutation 这是C++的STL中专门用来排列的函数(可以自动处理存在重复数据集的排列问题) 使用时要加上头文件 #include <algorithm> using namespace std; 函数在C++程序中的调用方法:next_permutation(sta 阅读全文
posted @ 2017-09-06 21:28 红雨520 阅读(275) 评论(0) 推荐(0) 编辑
摘要:在c++中支持俩种多态性: 1》编译时多态性 2》运行时多态性 编译时多态性->通过重载函数和运算符重载实现。(静态多态性) 运行时多态性->通过虚函数和继承实现。(动态多态性) 阅读全文
posted @ 2017-09-06 20:48 红雨520 阅读(131) 评论(0) 推荐(0) 编辑
摘要:快排是我们平常敲代码和比赛的时候 经常使用到的方法 qsort是函数库中自带的函数 这是一个标准的快排函数 而sort比qsort更是好用 sort对于不同大小的数组 会使用不同的排序方法 所以我在使用sort之后 就没有使用过qsort了 我今天在这回顾一下qsort 和sort 的使用方法 qs 阅读全文
posted @ 2017-09-04 20:38 红雨520 阅读(190) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示