- 博客(14)
- 收藏
- 关注
原创 C++封装、继承、多态(虚函数)
当派生类中定义了一个与基类中虚函数具有相同签名(函数名、参数列表、返回值类型)的函数时,就发生了同名覆盖。此时,派生类的对象在调用该函数时,会执行派生类中重写的版本,而不是基类中的版本。访问obj的虚表,obj中没有派生类的show方法,执行到“000000”报错。这种强转可以理解为:无效的。和)只是简单地改变了指针的类型,而不会改变对象本身的实际类型。obj实际上是Object类型的对象,尽管你把它的指针强制转换为Base*或Test*类型,但对象的内存布局和实际类型依旧是Object。虚函数调用。
2025-04-02 19:55:59
908
原创 c++柔性数组、友元、类模版
答:参数列表,在定义对象的时候要调用构造函数,拿参数列表对数据成员进行创建,静态成员被所有对象共享,在定义不同的对象时都要对静态成员进行构建,c++中,数据成员(对象、变量)在生存期内只能被构建一次。(2)全局静态变量只在本文件中可见,同一工程的其他文件不可见, (私有),未用static修饰的全局变量,可以用extern在其他文件用。(1)static可以修饰属性的类型,要在类外进行初始化,如果是静态常性变量可以在类内进行初始化,但必须要求是整型类型。() {} ,在其他文件中不能用,(私有)。
2025-04-01 15:02:44
891
原创 Linux———HTTP协议和web服务器
TCP/IP 四层模型:应用层HTTP传输层CP 或 UDP应用层:要自己组装http报文、解析http报文。服务器相当于TCP 服务器。http协议端口:80 https协议端口:443解析www.baidu.com :DNS ----> 拿到ip地址。
2025-03-31 15:38:57
997
原创 计算机网络复习
通过 IP 地址和端口号的组合,就能够准确地将数据发送到目标计算机上的特定应用程序,实现不同应用程序之间的并发通信。是互联网协议地址(Internet Protocol Address)的简称,它是分配给连接到互联网上的设备的唯一标识符,就如同现实生活中的家庭住址一样,用于在网络中标识和定位设备,实现设备之间的数据通信。即:接收方在处理完一个数据包的部分数据后,由于某些原因(如处理逻辑复杂、线程阻塞等),没有及时读取剩余的数据,这时新的数据包又到达了,就会造成粘包现象。(1)各层之间是独立的。
2025-03-28 19:32:02
726
原创 Linux复习二
生产者:是负责生产数据或任务的线程或进程。它不断地生成数据,并将其放入一个共享的缓冲区中。消费者:是负责处理数据或任务的线程或进程。它从共享缓冲区中取出数据进行处理。
2025-03-26 20:46:18
1007
原创 Linux复习
系统目录是一颗倒状树。/bin:存放常见命令/etc:系统配置文件/home:普通用户家目录/root:管理员家目录/usr:系统应用程序以及文档/proc:虚拟文件系统目录/dev:存放设备文件/lib:库文件/boot:系统内核及启动有关的文件/tmp:临时文件/var:系统运行时常改变的文件,如日志文件。
2025-03-25 20:23:02
871
原创 C++基础语法---构造析构函数
构造函数和析构函数是类的重要组成部分。他们在类中担任着至关重要的工作。构造函数常用来完成对象生成时的数据初始化工作,而析构函数则常用于在对象销毁时释放对象中所申请的资源。当对象生成时,编译器会自动产生调用其类构造函数的代码,在编码过程中可以为类中的数据成员赋予恰当的初始值。当对象销毁时,编译器同样也会产生调用其类析构函数的代码。构造函数与析构函数都是类中的特殊的成员函数,构造函数支持函数重载,而析构函数只能是一个无参函数,它们不可定义返回值。调用构造函数后返回值为对象手地址,也就是this指针。
2024-11-05 20:37:49
1008
原创 C++基础语法---类和对象
类是面向对象设计方法的核心;面向过程的程序设计的基本模块是由函数组成,解决问题时是以流程来分析,而面向对象程序设计的基本模块是类,类是对逻辑上相关联的数据和函数的封装。是对问题的抽象描述,实际上类就是满足描述现实事物而自定义的数据类型。
2024-10-16 09:33:13
786
原创 C++基础语法
指针的指向可以修改,即指针变量中保存的值可以改,但是指针所指向的空间中的内容是不可以改的。合适,因此匹配出来多个函数,此时程序编译失败,这种情况被称为函数重载的二义性问题。注:引用充当函数参数时,可以有默认值,这个引用最好是常引用,除此之外,没有必要为引用设。如果一个函数被大量,频繁的调用。了优化这一问题,引入了内联函数的概念,该函数如果被定义成了内联函数,则该函数在。在同一个作用域内,有多个函数,函数名相同,函数的参数类型或个数不同,在使用时,由于有了默认参数,因此函数在调用时,可以不用传递实际参数。
2024-10-15 11:39:37
758
原创 C语言--结构体(类型设计)
enum 类型名 变量名 = 值默认情况下枚举变量的值是从0开始的,且在赋值和使用时,只能使用枚举类型中出现的值注:枚举类型没有++ --运算if (y!elseint main()枚举变量的大小,实质是常数所占内存空间的大小,上图代码,内存大小:4字节,运行结果如下其中,枚举类型,第一个表示0,所以 Mon:0,Tues:1,Wed:2,其中Thurs = 100,后续的值一次+1,所以,Fri:101。
2024-08-08 18:45:31
1685
原创 C语言--字符数组
函数原型:char *strncpy(char *dest, const char *src, size_t n);函数原型:char *strncat(char *dest, const char *src, size_t n);返回值 >0 s1中第一个和s2不一样的那个字符的ASCII码,比s2大。返回值 >0 s1中第一个和s2不一样的那个字符的ASCII码,比s2大。返回值<0 s1中第一个和s2不一样的那个字符的ASCII码,比s2小。打印输出str2,因为字符串内有\0,一个字符串。
2024-07-26 20:40:25
5197
原创 二维数组笔试题
分析:杨辉三角(Pascal's Triangle),又称帕斯卡三角形,是一个在数学中具有重要地位的三。下面是一个使用数组实现的C语言程序示例:有20个人,报数到3的人被杀掉,然后下一个人继续报数。它的构造方式是从上到下,每一行的数字都是基于上一行的数字计算得到的。,除了每行的开始和结束的两个1以外,每个数字是它正上方和左上方两个数字之和。题目:约瑟夫环是一个著名的理论问题:N个人围成一圈,从某个人开始报数,每报到M的人将。即:a [i] [j] = a [i-1] [j] + a [i-1] [j-1]
2024-07-25 12:25:19
321
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人