![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 60
SL1109
图像处理 机器学习 人工智能 深度学习 计算机视觉
展开
-
重载&&方法的重写
什么是函数重载: 同一作用域,函数同名不同参(个数、类型、顺序)C++如何做到重载的: 原理: C++代码在编译时会根据参数列表对函数进行重命名。 例如: void Swap(int a, int b) //会被重命名为_Swap_int_int, void Swap(float x, float y)//会被重命名为_Swap_fl...原创 2018-05-29 09:54:02 · 304 阅读 · 0 评论 -
字符,字符串
字符: 1). 头文件: #include<ctype.h> 2). 操作:isalnum// 是否字母和数字 isdigit//是否数字isspace//是否空格isupper//是否大写字母toupper//转换为大写字母tolower//转换为小写字母3). 实例://toupper(原创 2018-05-28 21:55:34 · 177 阅读 · 0 评论 -
STL之set(集合)(3)
set类似于vector,但是set(集合)中元素不可重复。set的定义、初始化、基本操作: { set <string> m; m.insert("hello1"); m.insert("hello2"); m.insert("hello3"); if (find(m.begin(),m.end(), "hello") == m...原创 2018-05-28 21:42:31 · 155 阅读 · 0 评论 -
STL之vector(2)
vector区别于array,vector是动态数组。主要记录其基本操作、定义、初始化、二维vector头文件: #include&amp;amp;amp;amp;lt;vector&amp;amp;amp;amp;gt; 定义和初始化:vector v1; // 创建空容器,其对象类型为string类vector v2(10); //创建有10个具有初始值(即空串)的string类对象的容器vector v3(5, &amp;amp;a原创 2018-05-28 19:46:38 · 229 阅读 · 0 评论 -
STL(1)
- 数组: 1.排序:#include&amp;lt;algorithm&amp;gt; 升序:sort(arr,arr+10);降序:bool compare(int a,int b){ return a&amp;gt;b;}//升序排列,如果改为return a&amp;gt;b,则为降序sort(a,a+10,compare);长度:int n=(sizeof(arr) /siz...原创 2018-05-28 19:01:02 · 133 阅读 · 0 评论 -
C++_数据类型转换
#include&lt;sstream&gt;头文件提供数据类型转换int main(){ //字符串转化成整数 int A; string s; cin&gt;&gt;s; stringstream seam;//随意的什么类型都可以输入 seam&lt;&lt;s;//向流中传入值s 字符串型 seam&g原创 2018-05-28 18:50:23 · 464 阅读 · 0 评论 -
内联函数inline,调用函数,宏#define,const修饰符
内联函数:inline宏:define1.内联函数与调用函数的区别编译器将使用相应的函数代码替换函数调用; 对于内联函数,程序无需跳到另一个位置处执行代码,再跳回来; 内联比常规快,但是代价是占用破更多的内存;2.内联函数与宏的区别inline double square(double x){return x*x} //内联#define SQUARE(X)X*X ...原创 2018-05-29 10:02:48 · 220 阅读 · 0 评论 -
指针,引用(1)
一,指针 1. 定义:指针是一种用于存放另一个变量的地址的变量 2. 初始化:基类型 *指针名; //"*"号用来访问指针所指向的对象int i; int *p = &i;// int *p; p = &i;3.指针举例:int main(){ int i; /*定义一个int型变量i*/ int *p;...原创 2018-05-29 11:03:48 · 328 阅读 · 0 评论 -
数据封装,继承,多态
数据封装#include &amp;amp;lt;iostream&amp;amp;gt;using namespace std;class Adder{ public: // 构造函数 Adder(int i = 0) { total = i; } // 对外的接口 void addNum(int number)...原创 2018-06-12 11:44:50 · 236 阅读 · 0 评论 -
malloc/free new/delete
参学:http://c.biancheng.net/cpp/biancheng/view/2978.html 1.代码:#include &lt;iostream&gt;#include &lt;stdio.h&gt;#include &lt;string.h&gt;using namespace std;int main(){ /*************1.开辟单变量地...原创 2018-06-08 20:11:43 · 169 阅读 · 0 评论 -
接口(抽象类),数据抽象,数据封装
接口参学:http://www.runoob.com/cplusplus/cpp-interfaces.html1.什么是接口? 接口描述了类的行为和功能,而不需要完成类的特定实现。C++ 接口是使用抽象类来实现的,抽象类与数据抽象的区别: 数据抽象是一个把实现细节与相关的数据分离开的概念。 如果类中至少有一个函数被声明为纯虚函数,则这个类就是抽象类。纯虚函数是通过在声明中使...原创 2018-06-08 16:45:45 · 897 阅读 · 0 评论 -
struct和class
1.在C中和C++中的区别 2.代码 使用 struct 来定义类的一个反面例子:#include <iostream>using namespace std;struct Student{ Student(char *name, int age, float score); void show(); char *m_name; int...翻译 2018-06-08 15:51:02 · 172 阅读 · 0 评论 -
构造函数(构造器), 析构函数(析构器)
1、构造器:类名(形参列表)构造体 作用:在类创建对象时,自动调用,完成对类对象的初始化 屌屌的初始化:初始化列表:注意初始化列表中的被初始化顺序与声明顺序有关 如:class Date {public: Date(int y, int m, int d) : year(y), month(m), day(d) {}//构造函数(初始化列表)进行类的初始化 private...原创 2018-06-08 14:30:27 · 270 阅读 · 0 评论 -
class类实现钟表
#include <iostream>#include <time.h>#include <windows.h>//sleep(1)的头文件 using namespace std;class Clock{ public: void wun();//一个方法 Clock() { //构造函数初始化 ...原创 2018-06-07 21:07:05 · 977 阅读 · 0 评论 -
STL只queue(队列)(5)
1. 思想: 先进先出基本知识如图: 2. 定义: queue<int> q1; queue<double> q2;3. 基本操作:/*入队:q.push(x)— 将x 接到队列的末端。出队:q.pop()—弹出队列的第一个元素(第一个插入的元素),注意,并不会返回被弹出元素的值。访问队首元素:q.front()—即最早被压入队列...原创 2018-05-29 20:06:49 · 207 阅读 · 0 评论 -
STL之stack(栈)(4)
1.先进后出,结构图 2.定义: stack<int>s1; stack<string>s2;3.基本操作s.pop();//出栈操作只是删除栈顶的元素,并不返回该元素。4.代码举例:#include<bits/stdc++.h>using namespace std; int main(){ sta...原创 2018-05-29 19:53:23 · 138 阅读 · 0 评论 -
默认参数
- 思想: 一般情况下,函数调用时实参个数应与形参相同,但为了更方便地使用函数,C++也允许定义具有默认参数的函数,这种函数调用时实参个数可以与形参不相同。“默认参数”指在定义或声明函数时为形参指定默认值(default)。这样的函数在调用时,对于默认参数,可以给出实参值,也可以不给出实参值。如果给出实参,将实参传递给形参进行调用,如果不给出实参,则按默认值进行调用。(代码解释如下:)...原创 2018-05-29 19:36:24 · 1812 阅读 · 0 评论 -
enum
/*1.定义 enum 枚举名{ 标识符[=整型常数], 标识符[=整型常数], ... 标识符[=整型常数], } 枚举变量;2.存在的意义 主利用枚举的元素的值:默认从第一个元素=0开始 3.若初始化,则累加1 */enum Day {Saturday, Sunday = 0, Monday, Tuesday, Wednesday,Thursday, Frid原创 2017-12-02 19:03:24 · 199 阅读 · 0 评论 -
Union
一、定义:有时需要使几种不同类型的变量存放在同一段内存单元中。虽然在同一段内存中不同数据类型所占字节数不同,但都从同一地址开始存放,也就是使用了覆盖技术,几个变量互相覆盖。这种使几个不同的变量共占一段内存的结构,称为共同体类型的结构(也称为联合类型)。 二、关键点:1.当数据项使用2种或多种形式(但是不会同时使用的时候),可节省空间。 2.内存长度等于最长的成员的长度3.能够访问的是共用体变量中最后一次被赋值的成员,在对一个新的成员赋值后原有的成员就失去作用4.共同体变量的地址和它的各成员原创 2017-12-02 18:04:58 · 238 阅读 · 0 评论 -
通用对象的四大默认函数
通用对象的四大默认函数 构造器 析构器 拷贝构造器 运算符重载原创 2018-06-05 21:33:23 · 218 阅读 · 0 评论 -
C++依赖倒置原则扩展
C++依赖倒置原则扩展翻译 2017-11-19 16:02:30 · 287 阅读 · 0 评论 -
template 模板2
类模板是类的抽象,类是类模板的实例原创 2017-11-22 15:24:20 · 245 阅读 · 0 评论 -
顺序表类模板
顺序表类模板(数组+操作作为一个类,考虑到数组元素类型不同,所以定义为类模板)翻译 2017-10-30 15:04:14 · 509 阅读 · 0 评论 -
指向类数据成员的指针
指向类数据成员的指针翻译 2017-11-16 14:23:59 · 1129 阅读 · 0 评论 -
指向类成员函数的指针
指向类成员函数的指针翻译 2017-11-16 14:31:41 · 383 阅读 · 0 评论 -
C++两个原则
C++原则1:开闭原则: 闭:高层业务的接口要高度抽象,不要试图修改。 开:如果有新的功能增加的话,通过增加类来实现 。 C++原则2:依赖倒置原则: 高层和底层依赖于其抽象,细节应依赖于抽象翻译 2017-11-19 15:39:06 · 357 阅读 · 0 评论 -
顺序表类模板
//【例6.3】顺序表类模板。#include#include using namespace std;template class seqlist{T slist[size]; //存放顺序表的数组int Maxsize; /翻译 2017-12-13 20:22:15 · 625 阅读 · 0 评论 -
template模板1
函数模板,只适用于函数的参数个数相同而类型不同,且函数体相同的情况。如果个数不同,则不能用函数模板。原创 2017-11-22 14:29:54 · 352 阅读 · 0 评论 -
类静态成员函数的定义
类静态成员函数的定义翻译 2017-11-16 11:37:15 · 8989 阅读 · 0 评论 -
类静态数据成员的定义及初始化
类静态数据成员的定义及初始化翻译 2017-11-16 11:25:30 · 4705 阅读 · 0 评论 -
友元类
友元对象(友元类)原创 2017-11-15 20:18:24 · 188 阅读 · 0 评论 -
类成员函数做另一个类的友元
类成员函数做另一个类的友元原创 2017-11-15 20:04:01 · 545 阅读 · 0 评论