自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【C++教程从0到1入门编程】第十三篇:STL中list类的模拟实现

【代码】【C++教程从0到1入门编程】第十三篇:STL中list类的模拟实现。

2024-03-26 19:45:09 222

原创 【C++教程从0到1入门编程】第十二篇:日期类

【代码】【C++教程从0到1入门编程】第十二篇:日期类。

2024-03-19 20:44:37 202

原创 【C++教程从0到1入门编程】第十一篇:STL中list类的初识

list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。list与forward_list非常相似:最主要的不同在于forward_list是单链表,只能朝前迭代,已让其更简单高效。与其他的序列式容器相比(array,vector,deque),list通常在任意位置进行插入、移除元素的执行效率更好。

2024-03-14 19:44:11 394

原创 【C++教程从0到1入门编程】第十篇:STL中Vector类模拟实现

它是一种“浅拷贝”,因为它只是按字节逐个复制源内存块的内容到目标内存块,而不会关心内存块中所包含的数据的结构或者类型。reserve开辟容量空间时开辟的新空间不能使用memcpy把旧空间的数据拷贝过去,要使用循环赋值过去,因为memcpy是浅拷贝,浅拷贝最后会导致释放旧空间新空间的指针指向一块已被释放的空间,造成程序崩溃。只会复制指针的值,而不会复制指针所指向的内容。这样,如果源内存块和目标内存块中的指针指向相同的内存区域,那么修改其中一个内存块中的内容也会影响到另一个内存块,因为它们共享相同的数据。

2024-03-14 17:21:00 395

原创 【C++教程从0到1入门编程】第九篇:STL中Vector类

1.vector的介绍vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大小为了增加存储空间。其做法是,分配一个新的数组,然后将全部元素移到这个数组。

2024-03-12 20:05:14 1002

原创 【C++教程从0到1入门编程】第八篇:STL中string类的模拟实现

此时引出了概念浅拷贝,浅拷贝:也称位拷贝,编译器只是将对象中的值拷贝过来。如果对象中管理资源,最后就会导致多个对象共享同一份资源,当一个对象销毁时就会将该资源释放掉,而此时另一些对象不知道该资源已经被释放,以为还有效,所以 当继续对资源进项操作时,就会发生发生了访问违规。要解决浅拷贝问题,C++中引入了深拷贝。那么深拷贝呢?

2024-03-10 10:57:13 529

原创 【C++教程从0到1入门编程】第七篇:STL中string类

转换后遇到\0就会结束,string则会全部输出。

2024-03-03 13:58:33 322

原创 【C++教程从0到1入门编程】第六篇:C++模板初阶

可以看到三种数据都被交换了,此处的typename也可以用class来代替。在编译器中,当同时遇到自己写的和模版中给的时候,会先调用自己所写的!如果在代码中加上Add(a,c)结果会怎么样呢。普通的函数会进行自动转换,但是模版不可以!而且这两次调用的函数地址不同。

2024-03-02 20:21:33 371

原创 【C++教程从0到1入门编程】第五篇:C/C++内存管理

三、C++中动态内存管理。

2024-03-02 17:26:49 920

原创 C++中与字符判断有关系的内置函数

2023-11-15 17:03:18 50

原创 Java——键盘输入

其中Scanner的函数常见的为.nextxxx,xxx为数据类型,若类型为字符串,需要使用.nextLine或者.next。.next相当于C/C++中的scanf和cin,遇到空格或回车就停止。.nextLine相对于C/C++中的gets。从Java5开始,Java引入了Scanner类作为输入的类型。由上可知,Java的输入是以流的方式进入,只能以字符串的形式进入,但Scanner类支持以数据类型读取内容。由于我们是使用Scanner这个类进行输入控制,因此首先我们需要构造出这个类的对象。

2023-10-21 19:53:35 94 1

原创 C++ sort()

int score;int s;i < 3;i++)i < 3;i++)

2023-09-24 14:32:07 86 1

原创 AcWing 3564.日期类 C++格式化输出

【代码】AcWing 3564.日期类 C++格式化输出。

2023-09-24 09:56:43 51

原创 【C++教程从0到1入门编程】第四篇:C++类和对象(下篇)

一、再谈构造函数1.构造函数体赋值在创建对象时,编译器通过调用,给对象中各个成员变量一个合适的初始值。虽然上述构造函数调用之后,对象中已经有了一个初始值,但是,构造函数体中的语句只能将其称作为赋初值,而不能称作初始化。2. 初始化列表初始化列表:以一个开始,接着是一个以分隔的数据成员列表,每个"成员变量"后面跟一个放在括号中的初始值或表达式。每个成员变量在初始化列表中只能出现一次(初始化只能初始化一次类中包含以下成员,必须放在1.引用成员变量2.const成员变量。

2023-09-13 20:02:05 52 2

原创 C++ 友元

在程序里,有些私有属性 也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术就是让一个函数或者类 访问另一个类中的私有成员friend。

2023-09-12 18:35:28 48 1

原创 构造函数 拷贝构造函数 用例

【代码】构造函数 拷贝构造函数 用例。

2023-09-10 20:03:33 42 2

原创 KY258 日期累加

输入第一行表示样例个数m,接下来m行每行四个整数分别表示年月日和累加的天数。设计一个程序能计算一个日期加上若干天后是什么日期。输出m行,每行按yyyy-mm-dd的个数输出。

2023-09-10 15:57:38 42 2

原创 KY222 打印日期

可能有多组测试数据,对于每组数据, 按 yyyy-mm-dd的格式将输入中对应的日期打印出来。输入包括两个整数y(1<=y<=3000),n(1<=n<=366)。给出年分m和一年中的第n天,算出第n天是几月几号。

2023-09-10 15:33:27 43 2

原创 C++ 日期差值

思路是令小的日期天数不断++,一直追赶到与大的日期相等。

2023-09-10 14:12:57 95 2

原创 日期类(C++必学)

相信这个大家都见过,当我们学完C++的类和对象后,我们就可以尝试着写一下。1.可以输入一个合法的日期(若没有输入,则进行默认赋值)第一步:我们要定义一个日期类,包括了成员函数的声明和成员变量的定义。2.在日期上加上一定的天数(减少一定的天数)第三步:对成员函数进行测试和优化。3.将两个日期进行比较以及加减。第二步:我们要定义成员函数。

2023-09-09 17:22:02 34 2

原创 数字如何变成字符类型

在编程中,我们用的符号一般来自ASCII码,它是用一个字节的低七位来表示一个字符的编码, 2^7 =128 ,最高位是 0 ,所以,用 ASCII 码可表示 128 个字符那么在ASCii码中‘1’的对应编码是49的二进制码,但是我们的数字1,就等于1呀,所以为了由原来的‘1’实际上就是49的二进制变成现在的1对应的二进制1,只好用49-48=1了。就可以了简而言之就是1与’1’之间差个48个不同的ascii码,就像a与A相差32个ascii码,同理,从int类型变成char类型,就需要加上一个’0’了。

2023-08-27 09:52:13 92

原创 【C++编程从0到1】第三篇:类和对象(中篇)

类和对象的六个默认成员函数的使用,而默认成员函数提供了大量能使我们快速便捷地处理数据的方法

2023-07-22 18:27:08 40

原创 【C++编程从0到1】第二篇:类和对象(上篇)

本文仅仅简单介绍了类和对象(上)的使用,而类提供了大量能使我们快速便捷地处理数据的成员函数和成员变量。

2023-07-17 20:04:14 66 2

原创 【C++教程从0到1入门编程】第一篇:C++入门

定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{}中即为命名空间的成员。在使用nullptr表示指针空值时,不需要包含头文件,因为nullptr是C++11作为新关键字引入的。在C++11中,sizeof(nullptr) 与 sizeof((void*)0)所占的字节数相同。为了提高代码的健壮性,在后续表示指针空值时建议最好使用nullptr。

2023-07-14 20:41:19 105 3

原创 VS的使用过程中scanf报错的最有效解决办法!

D:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\VC\VCProjectItems里的(因为不同版本路径可能不同,所以最方便的就是去安装路径之后搜索newc++file.cpp这个文件)当我们第一次使用vs的过程中,不难发现,当使用scanf时,总会出现如上的报错,那么我们该怎么办呢?1.找到我们安装VS的目录,这里我用2022版的进行演示(所有版本通用)但每次打开重新输入便显得特别繁琐,那么下面就是一劳永逸的办法。

2023-03-20 17:38:47 169 2

原创 深度剖析数据在内存中的存储------原码,反码,补码,整形提升

深度剖析数据在内存中的存储------原码,反码,补码,整形提升

2023-02-18 20:22:27 238 1

原创 【C语言】杨氏矩阵

杨氏矩阵,很简单一道算法题,一起来看看吧

2023-02-18 03:01:36 98

原创 【C语言实现经典小游戏】——“扫雷”【近万字保姆级教学】

C语言经典小游戏,扫雷!快来看看吧

2022-11-24 18:57:38 129

原创 C语言的学习中如何将 数组传给函数

C语言传递数组给函数方式

2022-11-22 19:11:55 748

原创 输入一个数字,求二进制中1的个数

刷题过程中,遇到好的习题,分享一下解法

2022-11-17 19:15:14 82

原创 & | ^运算符用法

C语言中位操作符的应用原理

2022-11-15 23:48:51 976

原创 【C语言实现经典小游戏】——“三子棋”【近万字保姆级教学】

简单的三子棋小游戏,保姆级教学

2022-11-11 21:24:49 929 1

原创 经典简单的猜数字小游戏

经典的猜数字小游戏,小白学完循环后,快快点进来~

2022-10-29 14:35:40 773

原创 编程学习启示录——开篇

记录我的学习路

2022-10-14 11:38:33 154 1

原创 记录小白杭电OJ刷题

记录一下学习过程

2022-09-30 15:14:02 299

空空如也

空空如也

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

TA关注的人

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