自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 STL总结二

stack容器简介stack是堆栈容器,是一种“先进后出”的容器。stack是简单地装饰deque容器而成为另外的一种容器。栈不能遍历,不支持随机随机存取,只能通过top从栈顶获取和删除元素stack的push()与pop()方法stack.push(elem); //往栈头添加元素stack.pop(); //从栈头移除第一个元素stack对象...

2020-03-13 13:03:31 169

原创 STL总结一

基本概念STL(标准模板库)分三类:algorithm(算法)、container(容器)和iterator(迭代器)STL详细的六大组件:容器、算法、迭代器、仿函数、适配器、空间适配器容器stringvectorlisttrack...

2020-03-10 21:30:31 201

转载 函数模板与类模板

函数模板类模板

2020-03-08 19:56:29 100

原创 C面向接口编程和C多态

数组指针和指针数组的区别指针数组(多个指针变量)int *p[3]表示一个一维数组内存放三个指针变量,分别是p[0]、p[1]、p[2]数组指针(行指针)int (*p)[];int a[3][4];p=a;//将二维数组首地址a[0][0]赋给pp++;//p=p+1,p跨过a[0][]指向a[1][]***************************数组指针...

2020-02-29 17:46:30 107

原创 纯虚函数和抽象类

基本概念注意:1、纯虚函数可以有函数体,但是必须定义在类外2、一个基类中说明具有纯虚函数,该基类为抽象类,如果派生类中没有对基类的纯虚函数进行定义,那么派生类自身也就成了一个抽象类。1)、不能建立抽象对象2)、不能从具体类派生出抽象类3)、抽象类不能作为函数的参数类型,函数的返回值和显示转换的类型4)、可以声明指向抽象类的指针或引用,此指针可以指向其派生类,进而实现多态5)、派生...

2020-02-29 16:16:36 528

原创 多态

前言父类和子类拥有相同名字的函数print()Paren *p=&c(child 对象)p->print();//打印的是父类函数//现象产生的原因//赋值兼容性原则遇上函数重写出现的一个现象//1 没有理由报错//2 对被调用函数来讲,在编译器编译期间,我就确定了,这个函数的参数是p,是Parent类型的。。。//3静态链编面向对象新需求编译器的做法...

2020-02-28 20:48:29 105

转载 c/c++/stl常见面试题

非常详细的c/c++/stl常见面试资料,建议收藏!添加链接描述

2020-02-28 16:35:04 342

原创 继承和派生

一 继承关系举例万事万物中皆有继承,是重要的现象两个案例:1)植物继承图;2)程序员继承图继承相关概念派生类的定义注意:C++中的继承方式(public、private、protected)会影响子类的对外访问属性。继承重要说明1、子类拥有父类的所有成员变量和成员函数2、子类可以拥有父类没有的方法和属性3、子类就是一种特殊的父类4、子类对象可以当作父类对象使用派生类的访...

2020-02-27 12:48:14 81

原创 运算符重载

一 概念1为什么会用运算符重载机制用复数类举例//Complex c3 =c1 + c2;//原因 Complex是用户自定义类型,编译器根本不知道如何进行加减 //编译器给提供了一种机制,让用户自己去完成,自定义类型的加减操作。。。。。//这个机制就是运算符重载机制2 运算符重载的本质是一个函数全局函数、类成员函数方法实现运算符重载步骤1)要承认操作符重载是一个函数,写出...

2020-02-27 10:23:48 111

原创 友元

友元函数注意:1.不是成员函数,无this指针 2.破坏了类的封装性 1、声明位置和public和private无关 2、友元函数参数一般包括(友元类指针,要赋的值)友元函数作用:全局函数访问类的私有变量二 友元类Ø 若B类是A类的友员类,则B类的所有成员函数都是A类的友员函数Ø 友员类通常设计为一种对数据操作或类之间传递消息的辅助类思考:为什...

2020-02-26 13:41:31 234

原创 C++面向对象模型初探

前言C++对象模型可以概括为以下2部分:语言中直接支持面向对象程序设计的部分,主要涉及如构造函数、析构函数、虚函数、继承(单继承、多继承、虚继承)、多态等等。对于各种支持的底层实现机制。在c语言中,“数据”和“处理数据的操作(函数)”是分开来声明的,也就是说,语言本身并没有支持“数据和函数”之间的关联性。在c++中, 通过抽象数据类型(abstract data type...

2020-02-26 12:02:00 113

原创 静态成员变量与成员函数

一 静态成员变量1)定义静态成员变量Ø 关键字 static 可以用于说明一个类的成员, 静态成员提供了一个同类对象的共享机制Ø 把一个类的成员说明为 static 时,这个类无论有多少个对象被创建,这些对象共享这个static 成员Ø 静态成员局部于类,它不是对象成员2)访问静态成员变量的方法cout << counter::Smem << ...

2020-02-26 11:13:41 91

原创 对象的动态建立和释放

1 new和delete基本语法1)在软件开发过程中,常常需要动态地分配和撤销内存空间,例如对动态链表中结点的插入与删除。在C语言中是利用库函数malloc和free来分配和撤销内存空间的。C++提供了较简便而功能较强的运算符new和delete来取代malloc和free函数。注意: new和delete是运算符,不是函数,因此执行效率高。2)虽然为了与C语言兼容,C++仍保留mal...

2020-02-25 19:08:36 202

原创 多个对象构造和析构

一 对象初始化列表1)对象初始化列表出现原因1.必须这样做:如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,没有默认构造函数。这时要对这个类成员进行初始化,就必须调用这个类成员的带参数的构造函数,如果没有初始化列表,那么他将无法完成第一步,就会报错。2、类成员中若有const修饰,必须在对象初始化的时候,给const int m 赋值当类...

2020-02-25 18:47:11 225

原创 深拷贝和浅拷贝

一 浅拷贝问题抛出与分析默认复制构造函数可以完成对象的数据成员值简单的复制对象的数据资源是由指针指示的堆时,默认复制构造函数仅作指针值复制 原因:未重新开辟内存 浅拷贝会带来野指针的问题,解决方法:手动写拷贝函数(深拷贝),重新开辟内存...

2020-02-25 18:21:39 134

原创 对象的构造与析构

一 前言创建一个对象时,常常需要作某些初始化的工作,例如对数据成员赋初值。注意,类的数据成员是不能在声明类时初始化的。原因:类相当于一个模板,是一种新数据类型,而非变量,当程序声明一个类,未申请存储空间,只有当这个类定义对象时才申请空间为了解决这个问题,C++编译器提供了构造函数(constructor)来处理对象的初始化。构造函数是一种特殊的成员函数,与其他成员函数不同,不需要用户...

2020-02-25 11:48:10 270

原创 类和对象

一 基本概念1.类、对象、成员变量(属性)、成员函数2.面向对象三大概念:封装、继承、多态3.编程实践:类的定义和对象的定义,对象的使用二 类的封装(1)封装(Encapsulation)A)封装,是面向对象程序设计最基本的特性。把数据(属性)和函数(操作)合成一个整体,这在计算机世界中是用类与对象实现的。B)封装,把客观事物封装成抽象的类,并且类可以把自己的数据和方法只...

2020-02-25 10:03:51 78

转载 TCP/IP协议分析

TCP/IP协议是一系列网络协议的总和,是网络通信架构的核心,它定义了电子设备如何接入因特网,以及数据如何在它们之间传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。清楚TCP/IP的工作原理,通俗一点讲就是,一个主机的数据要经过哪些过程才能发送到对方的主机上一. 首先我们梳理一下每层模型的职责:链路层:对0和1进行...

2019-12-23 16:55:56 454

原创 cvte面试c++题总结二

C和C++的区别1.面向过程和面向对象的区别(1)面向过程:面向过程编程就是分析出解决问题的步骤,然后把这些步骤一步一步的实现,使用的时候一个一个的依次调用就可以了。(2)面向对象:面向对象编程就是把问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。举个例子:(玩五子棋)(1)用面向过程的思想来考虑就是:开始游戏,白子先走,绘制画...

2019-12-18 10:51:22 389

原创 cvte面试c++总结

在C++中,源程序变为可执行程序的正确顺序编辑、编译、链接、执行虚函数,纯虚函数,多态性1、纯虚函数(pure virtual)纯虚函数的定义形式:virtual { } = 0;纯虚函数就是基类只声明函数体,没有实现过程。时对子类的约束,是接口继承。2、虚函数(Impure virtual)虚函数的定义形式:virtual {method body};c++的虚函数是基类提供虚函...

2019-12-17 21:15:00 660

转载 Ubuntu18.04配置YOLO及opencv3.4.2

Ubuntu18.04配置YOLO及opencv3.4.2为了用YOLO,要配置opencv以便显示图片可以参考以下链接https://blog.csdn.net/weixin_41851439/article/details/88712465https://www.cnblogs.com/aacirq/p/9694951.html这里我也没明白为什么一定要通过sourse安装,直接...

2019-11-20 20:09:01 497

转载 ubuntu18.03+gtx1060显卡驱动+CUDA10+cudnn7.5

ubuntu18.03+gtx1060显卡驱动+CUDA10+cudnn7.5在安装显卡之前请先把ubuntu 18.04系统提前安装好。需要准备的资料:NVIDIA 驱动下载驱动驱动到NVIDIA官网下载,在此下载页面选择合适的显卡,切记选择.run文件。安装驱动1 安装依赖sudo apt-get install gcc g++ make //因为安装过程需要这些工...

2019-11-19 18:35:37 1649 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除