- 博客(73)
- 收藏
- 关注
原创 const修饰指针
当const修饰指针所指向的内容时,你不能通过这个指针去修改它所指向的数据。但是,你可以改变指针本身的值,让它指向另一个地址。
2025-01-03 17:43:12
156
原创 什么是纯虚函数、怎么定义的?
纯虚函数是C++中用于实现抽象类(Abstract Class)的一个重要概念。抽象类是一种不能被实例化的类,它主要用于为派生类提供一个公共的接口。纯虚函数在基类中被声明,但没有在基类中实现(即没有函数体),它的目的是强制要求派生类必须实现这个函数。1、定义纯虚函数class Shape { public: // 纯虚函数声明 virtual void draw() const = 0; // 其他成员函数}; // 注意:包含纯虚函
2024-09-13 20:29:04
600
原创 C++的三大特性,简易说明
C++作为一种面向对象的编程语言,其三大特性分别为封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism)。
2024-09-12 16:32:18
904
原创 CPU 和外设之间的数据传送方式
正在执行的程序,转去执行外设数据的输入和输出操作,数据传送结束后,CPU再继续执行被暂停的程序。当外设需要和 CPU进行数据交换时,由外设向 CPU发出请求信号,是 CPU 暂停。通过 DMA 总线,外设直接从内存中拿数据,不通过 CPU 倒数据。直接在程序的控制下进行数的输入和输出操作。
2024-09-12 16:32:07
241
原创 纯虚函数和虚函数的区别
是否存在函数体:虚函数可以有函数体,而纯虚函数没有(除了=0,它不算是函数体)。能否实例化:包含虚函数的类可以被实例化,而包含纯虚函数的类(除非它被其他类继承并所有纯虚函数都被重写)不能被实例化,即它是抽象基类。用途:虚函数用于实现多态性,提供可以在子类中修改或扩展的功能;纯虚函数则用于定义必须由子类实现的接口,使父类成为抽象基类。
2024-09-11 20:19:22
607
原创 C语言实现strcmp
比较s1和s2出现的第一个不一样的字符、返回其ASCII码值的差值。函数用于比较两个字符串,并根据比较结果返回整数。(按字符的ASCII码),函数返回负数;)相等,函数返回0;
2024-09-11 16:48:56
501
原创 IO多路复用是如何处理多个客户端同时访问一个数据的
IO多路复用通过单个线程或进程监听多个文件描述符的状态变化,当某个文件描述符就绪(例如,有数据可读、可写或发生异常)时,线程或进程会收到通知,并对该文件描述符执行相应的IO操作。这种方式显著减少了线程或进程的数量,降低了系统开销,提高了资源利用率。
2024-09-10 19:43:38
543
原创 RISC和CISC区别
RISC(精简指令集计算机,Reduced Instruction Set Computer)、CISC(复杂指令集计算机,Complex Instruction Set Computer)是计算机处理器设计中的两种主要架构,它们在多个方面存在显著差异。
2024-09-06 14:58:14
2367
原创 Cortex-A系列处理器的工作模式
Cortex-M:中断控制器 NVIC 中断响应优先级 抢占优先级 自然优先级。Cortex-A:中断控制器 GIC 响应优先级 不可嵌套。
2024-09-06 14:57:54
342
原创 ARM的寄存器组织
lr:保存返回地址 比如函数调用处的下一条指令的地址。读:(地址)内存的值拷贝到寄存器。写:将寄存器的值拷贝到内存。R0-R12:通用寄存器。cpsr:程序状态寄存器。sp:栈区的栈顶的地址。spsr:保存cpsr。
2024-09-05 17:00:53
467
原创 ARM的体系结构
ARM体系结构是由英国ARM公司设计的一种精简指令集(RISC)架构,它以其低功耗、高性能和低成本的特点,在嵌入式系统、移动设备、服务器等多个领域得到了广泛应用。ARM体系结构主要定义了处理器的指令集、寄存器结构、内存访问方式等关键元素。
2024-09-05 17:00:40
938
原创 volatile关键字的作用
使用 volatile 修饰的变量,编译器在每次访问该变量时都会直接从其内存地址中读取它的值,而不是使用可能已经存储在寄存器中的缓存值。volatile 在C语言中的作用是防止编译器对变量的访问进行优化,确保程序能够读取到变量的最新值,这在处理硬件寄存器、多线程或多任务环境中的共享变量以及信号处理程序中的变量时特别有用。:在多线程或多任务程序中,一个线程(或任务)可能会修改另一个线程正在使用的变量的值。如缓存变量的值),这些优化在变量值可能会意外更改的情况下是不正确的。,以确保每次访问时都读取到最新的值。
2024-09-04 19:29:54
232
原创 QT实现MP4播放器
播放本地MP4文件。1、可以将文件添加到列表中,双击列表中的歌曲进行播放。2、实现视频的播放与暂停。3、上一首和下一首的按钮选择功能。4、视频名称的滚动显示。5、当前的播放时长和总时长。6、播放模式的选择:单曲循环、随机播放、顺序播放。7、使用了水平和垂直布局。8、视频音量的控制。9、使用非UI界面实现。
2024-08-31 15:12:11
1843
原创 C与C++的三种区分方式
在C和C++中,单个字符(char类型)的大小通常是1字节(8位),但这取决于编译器和目标平台。这是一种特别的区分方式,特别定义的。
2024-08-30 09:42:39
1998
6
原创 QT中非UI实现小功能的步骤
先明确是哪些对象之间要进行交互确定谁是发送者,谁是接收者发送者对应的类中找信号接收者对应的类中找槽函数,如果没有匹配的槽函数,自定义做信号与槽函数的关联 connect函数分析步骤: 哪个按钮被点击, 对应的文本展示框中的内容要发生变化如何知道按钮被点击了,去找信号,去QPushButton中找 clicked()去文本展示框类中找 槽函数 setText(QString)
2024-08-28 18:44:26
444
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人