自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python基础知识(一)

python是一种跨平台的编程语言,这意味着它能够运行在所有主要的操作系统中,再加上其简单易学,即支持面向过程又支持面向对象编程等特点,使它成为了最受欢迎的编程语言之一。注意:本教程面向有一定c或c++基础的同学。

2024-03-04 21:32:37 412 1

原创 this指针 静态成员 常成员

如果一个类的成员函数的局部变量和这个类的数据成员有相同的名字,或者成员函数的参数表中有和这个类的数据成员相同的名字,那么类的数据成员在成员函数中就会变得不可见,我们如果想要访问类的数据成员就需要用到this指针。this指针存储的是实例化对象的首地址,而静态成员函数不用实例化就能被调用,这说明静态成员函数是先于对象存在的,所以说静态成员函数肯定是没有this指针的。类的对象都可以访问静态成员,但是所有类的成员访问的静态成员都是同一份静态成员。我们发现成功的调用了两次静态成员函数lazy(),值得注意的是,

2024-02-07 12:21:33 933 1

原创 指针与引用(大全)

指针是C和C++都具有的一种直接操作内存地址的数据类型,它具有在程序运行期间直接操纵内存地址的能力,赋予了开发人员一种直观的操作内存地址的手段。引用是一个与指针相关联的概念,引用是C++引入的新语言特征,是C++常用的一个重要的内容之一。(本文所有代码都运行过并且能很好地运行)

2024-01-13 22:35:57 1630 2

原创 类的六个成员函数(构造,析构,拷贝构造以及三个重载)

当我们写了一个类只定义了成员变量而没有定义成员函数时,那么这个类中就没有成员函数了吗?并不是这样的,当我们定义了一个类时,即使我们没有写任何的成员函数,编译器会生成下面六个默认的成员函数(构造函数就是其中之一)。1,构造函数:主要完成初始化工作2,析构函数:主要完成清理工作3,拷贝构造函数:使用同类对象初始化创建对象4,赋值操作符重载:把一个对象赋值给另一个对象5,取地址操作符重载:主要是普通对象取地址6,const 修饰的取地址操作符重载:const对象取地址。

2024-01-05 01:57:44 1011 1

原创 控制台函数,双缓冲绘图,日常练习错误记录

如果按照代码中的错误例子运行是肯定的失败的,我已经在microsoft visual studio 运行试过了,肯定失败了。要注意顺序思想,别无脑写代码。有开就有关嘛,一定要注意。

2023-12-12 22:06:50 95

原创 rand()函数和srand()函数

原理:rand函数每次调用前都会查询是否调用过srand(seed),是否给seed设定了一个值,如果没有,种子的值就默认为1,直接用 1 来初始化种子,那生成的随机数每次就会重复,为了防止生成的随机数重复,一般使用时间戳作为时间种子,采用系统时间来初始化,使用time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970 到现在所持续的秒数,然后将time_t型数据转化为(unsigned)型再传给srand函数。那么这两次调用最后生成的随机数就是相同的。

2023-12-07 20:50:32 107 1

原创 main()函数的参数

这就需要调用“运行”或“DOS提示符”,在调用可执行程序exe时编译器会帮助我们将输入的参数信息放入main函数的参数列表中传参。int argc:英文名为argument count(参数计数)count of cmd line args,运行程序给main函数的命令行参数总个数,包括可执行程序名。字符串数组,用来存放指向字符串参数的指针数组,每个元素指向一个参数,空格分隔参数,其长度为argc,数组下标从零开始,argv[argc]=NULL。argv[2[ 指向执行程序名后的第二个字符串。

2023-11-29 22:07:02 105 1

原创 虚函数的具体用法(多态,隐藏,覆盖)

所谓虚函数就是在基类定义一个未实现的函数名,为了提高程序的可读性,建议后代中虚函数都加上。

2023-11-28 19:47:14 149

原创 插入排序(详解)

将最左边的 3 当做有序的数组,把后面的 8 6 2 1 6 当做无序数组。首先来一个乱序的数组 3 8 6 2 1 6(按从小到大的顺序排列)比较无序数组的第一个数字 8 和有序数组3,8更大,不用交换。此时,有序数组为3 8 ,无序数组为 6 2 1 6。此程序在visual studio 2022上运行通过。此时有序数组为 3 6 8,无序数组为 2 1 6。如此往复,就能实现从小到大的排序,这就是插入排序。首先让我们看一次下插入排序的原理。6比三大比八小,放在中间。很显然时间复杂度为O(N。

2023-10-30 16:06:21 71 1

原创 这是一个关于 int i=1,和i=1区别的问题

以下面这个题目为例子说明一下。

2023-10-26 18:02:02 158

原创 冒泡排序(详解,详解,详解)

当然还可以不用两个for循环,冒泡排序这么简单我说的这么多可能很啰嗦了,不多说了,直接上代码吧。冒泡排序是交换排序中的一种简单排序,其原理就是将相邻的元素进行比较,进行排序。和之前的快速排序一样,我们要首先写一个swap函数方便后面的使用。是不是很简单,没错就是这么简单,就只需要一个for循环就行了。这就是运行结果,总体还是运行的不错的。这是一个新手经常犯的错误,会这样报错。正确的代码应该这样写。下面是冒泡排序的部分。

2023-10-24 22:05:02 66

原创 Run-Time Check Failure #2

在一次偶尔敲代码的过程中发现的问题,在网上搜了一下,发现问题也不一样,在这里我说一下我的问题和解决方案。问题就出在这里,数组的访问越界了,将 i

2023-10-24 22:02:18 120

原创 变量的作用域和生命周期

所以局部变量的作用域:从定义之处起,之大括号之后失效,该变量所在的大括号。如果没有 int i=10;首先通过一个例子来认识一下。运行结果自然就是32了。

2023-10-23 22:03:38 52

原创 为什么我的递归写的像屎一样(哭)

要求不用循环完成求一个数的阶乘。//这个递归写的像屎一样。

2023-10-23 20:51:03 58

原创 vs错误c4996怎样解决

这个是因为strcpy和strcpy_s的原型是不一样的的,所有VS通过其声明会认为strcpy_s更加安全。当时在学习字符串函数,不经意间触发发了这个问题。报错的原因是因为vs认为strcpy不够安全。这种办法直接屏蔽了这个warning。当时是写了这样一段代码。

2023-10-22 16:09:08 103 1

原创 什么是o1,o2,o3优化

这是最高最危险的优化等级。为了加快代码执行效率,很多oj平台(online judge是一个在线判题系统,用户可以提交程序源代码,通常支持多种语言,系统对源代码进行编译和执行,并通过预设的数据测试来验证代码的正确性)都用到了o2优化(因为O2优化比O1优化更为强大,而又几乎没有O3优化·所带来的问题,所以被广泛采纳比如洛谷网站的oj平台就采用O2优化)综上来说:O1 O2 O3优化就是用来提高执行效率和减少运行时间的工具,并且O2优化包含O1优化,并在此基础上增加一些新的功能,同理03也是这样。

2023-10-19 17:36:05 2948

原创 如何判断一个素数(反正没人看,随便写写)

什么是素数(该不会有人连这都不知道吧):素数就是只能被自己和1整除的数(1不是质数哦)。所以就只需要保证n除以2到n-1没有余数就行了。

2023-10-17 21:24:20 215

原创 快速排序(详解,有图更好理解)

我们都知道排序有很多种,比如哈希排序,冒泡排序,选择排序等等,快排在所有排序中综合性能较强,所以被称为快速排序。

2023-10-14 15:45:02 101 1

原创 数组详解(详细,详细,详细)

本文介绍了数组相关的内容,适用于初学者学习

2023-09-30 21:26:36 145

空空如也

空空如也

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

TA关注的人

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