
C++
GangStudyIT
搬砖搬砖。。。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++入门小知识点(一)
C++是建立在C语言基础之上的一门面向对象的编程语言,所以要想学好C++必须先学好C语言,如果你觉得你不学C语言可以学好C++,可以试试,毕竟我没有尝试过。。。 咱们先来整理一下入门的认识与基本关于C++的知识: 1)认识C++。 2)C++与C语言相比有什么特点。 3)为什么C++支持重载,而C语言不行。 4)了解在C++中什么是函数缺省。 5)对于C...原创 2018-03-13 20:28:25 · 314 阅读 · 0 评论 -
c++ 中的类型转换(强制转换和隐式类型转换)
在我们学习c语言的时候,就知道强制类型转换和隐式类型的转换,但是在类型转换的过程中,很有可能一个不注意,容易出问题,这无疑是加大了,程序员的工作量,而且还检查很不好检查。所以在c++ 中就对类型的转换做了一定的限制,但是实际中大多数人,是在学习了c 语言后才学习 c++ 语言所以就用了 c 语言中的类型转换方式,那么今天我们介绍一下 c++ 中类型转换的方式,他们都是通过类模板的方式实现c...原创 2018-06-20 11:05:19 · 6296 阅读 · 0 评论 -
C++中STL中vector和list的迭代器失效问题
C++ 中vector和list是我们常用的容器,在容器配合算法的时候,就用到了迭代器。 这样提高了代码的可读性,也配合了STL中的算法。但是在容器中使用迭代器时候会发生迭代器失效问题,所以我们就得注意。首先我们看vector的迭代器失效问题在vector中迭代器失效发生在insert和erase中。我们先看insert,在vector中插入元素,插入元素后当发现开辟的空间不够了...原创 2018-07-01 18:14:22 · 4283 阅读 · 0 评论 -
C++中的三种智能指针分析(RAII思想)
智能指针首先我们在理解智能指针之前我们先了解一下什么是RAII思想。RAII(Resource Acquisition Is Initialization)机制是Bjarne Stroustrup首先提出的,是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术。 对于RAII概念清楚后,我们就可以理解为智能指针就是RAII的一种体现,智能指针呢,它是利用...原创 2018-06-10 21:59:04 · 8459 阅读 · 1 评论 -
C++异常处理
c++中异常处理程序在运行过程中,有对也就有错,正确那么就不用说了,但是如果错误,那么我们如何快速的定位到错误的位置,以及知道发生了什么错误,在c语言中,我们知道处理异常的方式为错误码,在程序运行错误后,我们可以查错误码的方式来,进行判断,但是对于有些情况我们就很难判断,比如虽说常见的错误可以用错误码表示,但是对于一些比较不常见的错误,错误码就不能表示到。所以为了方便和加强代码的健壮性,引...原创 2018-06-14 21:58:05 · 304 阅读 · 1 评论 -
模拟实现c++中STL的vector容器,模拟实现常用接口和迭代器
在C++中经常会用到STL的六大组件。哪六大组建呢? 有容器、算法、迭代器、容器适配器、空间配置器和仿函数,六大组件。 今天我们来模拟实现一下容器中的vector。 先说说vector的优点: 1)vector支持随机访问,这是它的最大的优点,有很多算法都要基于随机访问才能实现。 2)vector缓存利用率高,vector因为是连续的一段空间,所以在从内存到cpu的过程中会有个缓存区,所...原创 2018-06-21 21:59:11 · 902 阅读 · 0 评论 -
c++中模板的知识梳理
模板作用在C++中模板是泛型编程的一种体现,是采用无类型的逻辑代码编写。其作用就是达到代码的复用从而减少开发人员写重复的代码。模板的分类模板分类,大的方面分为模板函数和模板类。模板函数在时间开发过程中很有可能同一块代码,但是用了不同的类型,那么我们就必须每个类型都要写一份代码,为了解决这个问题,引入了模板函数。 具体是什么样子呢?在模板泛型编程中引入一个新的关键字...原创 2018-05-29 16:36:00 · 448 阅读 · 0 评论 -
C++中多态实现的原理分析、虚继承的原理
多态的原理分析在面向对象的语言中,封装、继承、多态三大特性。我们今天说说C++中多态的实现原理。 多态往往是用来在继承中,子类中的某些行为与父类中的不同,但是为了降低调用的耦合度,我们就定义出,一个对象中有不同的形态,当然是相对与传的对象。在C++中多态在c++中多态就是要满足两个要求,当然前提是在继承中,因为有继承才为了满足一些要求,才出现了多态。 1)必须在继承中,存在虚函数,...原创 2018-05-12 21:43:35 · 641 阅读 · 0 评论 -
C++中的继承与多态知识梳理
继承在面向对象编程语言中,都有三大特性:封装,继承和多态。 今天我们就来研究一下,C++中的继承。 概念 继承是在面向对象的编程中,把一些相同或者相近的属性给抽象出来,以此达到代码的复用功能,大大的提高了程序的开发效率。具体的讲就是子类拥有了父类的所有成员。通俗的讲就是在写程序时,有时候需要定义一个人类,好不容易写完,写全一个人的类,现在又要写一个学生类,那么没有继承...原创 2018-04-25 13:48:05 · 456 阅读 · 0 评论 -
隐式this指针及C++类中六个默认成员函数
隐式指针->this指针什么叫隐式指针? 它其实就是在对象实例化以后,在传参的时候默认传过去的一个对象的地址 怎么理解这句话呢? 比如:我们的拷贝构造函数(不知到拷贝构造函数是干什么的可以往下看)class Date{public: // 构造函数 Date(int year = 1970, int month = 1, int day = 1) ...原创 2018-03-28 10:26:32 · 837 阅读 · 0 评论 -
动态内存管理分析
内存区域的划分内存可以大块划分为系统占用不可访问的区域,剩下就是栈,堆,代码段,数据段(静态区)。 那么他们是如何分布在内存中的呢? 可以了解一下函数栈帧 栈和堆都可以存放数据 注意:栈是从高地址到低地址生长的,而堆与它相反。静态区是存放初始化和未初始化代码段就是存放代码啦C/C++中堆上的内存管理在C/C++上内存管理分为两种:1. 系统自动分配自动回收。...原创 2018-04-07 20:40:52 · 393 阅读 · 0 评论 -
C++入门小知识(二)const修饰成员函数,内联函数,有元,静态成员的理解
c++入门小知识总结(二)const修饰的成员函数如果学过C语言,那么对const有一定的了解,const修饰的变量不能能够被改变,修饰指针呢,指针不能被改变等。。。 在C++中const修饰的成员函数,那么可以推测一下,是不是它所修饰的成员函数不能改变呢?答案是no 不是说它所修饰的成员函数不能被改变,而是它所要接受的对象在本函数中不能不改变。 怎么来修饰成员函数呢? 举个例...原创 2018-03-30 16:45:38 · 334 阅读 · 0 评论 -
C++中的单例设计模式
单例设计模式首先我们要注意,单例设计是一种模式,也就是一种设计思想,可以让程序员减少bug,为什么这么说呢?因为单例模式,就是像框架一样,在设计程序的时候,采用别人经过多次的尝试而得出在设计软件时候该怎么做能有更好的结果,不容易出现错误,所以就有了一种设计思想,或者设计时候的框架,今天我们来讨论单例设计模式。什么叫单例模式?单例模式,我们从代码说起,就是在面向对象编程中,一个类只能...原创 2018-07-15 00:40:10 · 317 阅读 · 0 评论