2024.9.26 作业 +思维导图
一、作业
1、什么是虚函数?什么是纯虚函数
虚函数:函数前加关键字virtual,就定义为虚函数,虚函数能够被子类中相同函数名的函数重写
纯虚函数:把虚函数的函数体去掉然后加=0;就能定义出一个纯虚函数。
2、基类为什么需要虚析构函数
虚析构函数是为了解决多态导致的子类中空间只能释放父类继承下来部分的空间的问题,虚析构函数可以使空间全部释放,避免产生内存泄漏,所以在使用继承的时候,尽量就要加上虚析构函数
3、如何初始化const和static数据成员
const成员必须在初始化列表中进行初始化
static数据成员在类外进行初始化
4、指针和引用的区别
1、指针定义使用*,引用定义使用&
2、指针可以不初始化(野指针),但是引用必须初始化
3、在函数形参列表中的使用,指针是另一个指针与原指针指向的是一个空间,引用的形参就是外部使用函数输入的参数本身
4、没有空引用,但是有空指针
5、没有多级引用,但是有多级指针
6、指针根据系统占4字节,8字节的空间,引用所占的内存空间和被引用的对象的空间一致
7、引用的使用与目标一致,而指针的使用需要解引用*
8、没有引用数组,但是可以定义指针数组
5、new和malloc的区别
1、定义格式不一样
2、new可以通过定义的数据类型自动计算要分配的空间,而malloc需要自己手动计算空间
3、new是函数调用,需要开辟内存空间,malloc是c语言的关键字,不需要额外开辟内存空间
4、new定义时可以给对象初始化,而malloc不能给对象初始化
5、new不用强转,而malloc定义void*类型使用的时候需要强转成其他类型
6、内存泄漏怎么产生的?如何避免?
内存泄漏是开辟了一块内存空间,使用完之后没有及时释放,就会发生内存泄漏
7、C++的内存分区
堆区,栈区,代码段,数据段,自由存储区
9、常用的数据结构有哪些?时间复杂度和空间复杂度如何使用?
栈,队列,数组,链表,哈希表,图
时间复杂度和空间复杂度要结合使用,在时间不能太长的同时也不能占用太多的内存空间
二、思维导图

相关文章:
2024.9.26 作业 +思维导图
一、作业 1、什么是虚函数?什么是纯虚函数 虚函数:函数前加关键字virtual,就定义为虚函数,虚函数能够被子类中相同函数名的函数重写 纯虚函数:把虚函数的函数体去掉然后加0;就能定义出一个纯虚函数。 2、基…...
WSL进阶体验:gnome-terminal启动指南与中文显示问题一网打尽
起因 我们都知道 wsl 启动后就死一个纯命令行终端,一直以来我都是使用纯命令行工具管理Linux的。今天看到网上有人在 wsl 中启动带图形界面的软件。没错,就是在wsl中启动带有图形界面的Linux软件。比如下面这个编辑器。 出于好奇,我就…...
recoil和redux之间的选择
Recoil 和 Redux 是两个流行的 JavaScript 状态管理库,它们各自有不同的设计理念和使用场景。选择哪一个更好用,取决于你的具体需求、项目规模和个人偏好。 1. 设计理念 Redux 单向数据流:Redux 采用单向数据流模型,所有的状态变…...
无人机的作战指挥中心-地面站!
无人机与地面站的关系 指挥与控制:地面站是无人机系统的核心控制部分,负责对无人机进行远程指挥和控制。无人机根据地面站下达的任务自主完成飞行任务,并实时向地面站反馈飞行状态和任务执行情况。 任务规划与执行:地面站具备任…...
Vue 23进阶面试题:(第八天)
目录 29.vue2.0和vue3.0区别? 30.事件中心的原理 31.使用基于token的登录流程 32.防抖和节流 防抖(debounce) 节流(throttle) 29.vue2.0和vue3.0区别? 1.由选项API转变为组合API。 2.vue3将全局配置…...
Acwing 最小生成树
最小生成树 最小生成树:由n个节点,和n-1条边构成的无向图被称为G的一棵生成树,在G的所有生成树中,边的权值之和最小的生成树,被称为G的最小生成树。(换句话说就是用最小的代价把n个点都连起来) Prim 算法…...
VIM简要介绍
安装 大多数 Linux 发行版和 macOS 都预装了 VIM。如果没有,你可以通过包管理器安装: Ubuntu/Debian: sudo apt-get install vimFedora: sudo dnf install vimmacOS: brew install vim(使用 Homebrew)Windows: 可以从 VIM 官网下…...
.NET 6.0 使用log4net配置日志记录方法
1.包管理器引入相关包 2.添加Log4net文件夹和log4net.config配置文件(配置文件属性设为始终复制)。 3.替换 log4net.config的内容(3.1与3.2选择一个就好,只是创建日志文件有所区别) 3.1: <?xml version"1.0" encoding"utf-8"?> <configuration…...
Unity角色控制及Animator动画切换如走跑跳攻击
Unity角色控制及 Animator动画切换如走跑跳攻击 目录 Unity角色控制及 一、 概念 1、角色控制 1) CharacterController(角色控制器) 2) CapsuleCollider + Rigidbody(使用物理刚体控制) 2、角色动画-Animation、Animator 1) 旧版动画系统...
JSP+Servlet+Mybatis实现列表显示和批量删除等功能
前言 使用JSP回显用户列表,可以进行批量删除(有删除确认步骤),和修改用户数据(用户数据回显步骤)使用servlet处理传递进来的请求参数,并调用dao处理数据并返回使用mybatis,书写dao层…...
Cannot read properties of undefined (reading ‘upgrade‘)
前端开发工具:VSCODE 报错信息: INFO Starting development server...10% building 2/2 modules 0 active ERROR TypeError: Cannot read properties of undefined (reading upgrade)TypeError: Cannot read properties of undefined (reading upgrade…...
javaJUC基础
JUC基础知识 多线程 管程 Monitor,也就是平时所说的锁。Monitor其实是一种同步机制,它的义务是保证(同一时间)只有一个线程可以访问被保护的数据和代码块,JVM中同步是基于进入和退出监视器(Monitor管程对…...
std::distance 函数介绍
std::distance 是 C 标准库中的一个函数模板,用于计算两个迭代器之间的距离。它的主要作用是返回从第一个迭代器到第二个迭代器之间的元素数量。这个函数对于不同类型的迭代器(如随机访问、双向、前向等)都能有效工作。 函数原型 template …...
如何在Windows和Linux之间实现粘贴复制
第一步 sudo apt-get autorremove open-vm-tools第二步 sudo apt-get update第三步 sudo apt-get install open-vm-tools-desktop第四步 一直按Y,希望执行 Y第四步 重启 reboot然后可以实现粘贴复制。...
【第十七章:Sentosa_DSML社区版-机器学习之异常检测】
【第十七章:Sentosa_DSML社区版-机器学习之异常检测】 机器学习异常检测是检测数据集中的异常数据的算子,一种高效的异常检测算法。它和随机森林类似,但每次选择划分属性和划分点(值)时都是随机的,而不是根…...
【Vue】为什么 Vue 不使用 React 的分片更新?
第一,首先时间分片是为了解决 CPU 进行大量计算的问题,因为 React 本身架构的问题,在默认的情况下更新会进行很多的计算,就算使用 React 提供的性能优化 API,进行设置,也会因为开发者本身的问题,…...
大学生科技竞赛系统小程序的设计
管理员账户功能包括:系统首页,个人中心,用户管理,主办方管理,公告栏管理,竞赛分类管理,竞赛信息管理,报名信息管理,竞赛成绩管理 微信端账号功能包括:系统首…...
什么是聚集索引?
什么是聚集索引? 1、聚集索引的特点2、如何确定聚集索引3、性能优势 💖The Begin💖点点关注,收藏不迷路💖 聚集索引是一种特殊的索引,它直接包含了表中的所有数据行。所以,通过聚集索引…...
Centos/fedora/openEuler 终端中文显示配置
注意:这里主要解决的是图形界面、远程登录界面的中文乱码问题 系统原生的终端(如虚拟机系统显示的终端),由于使用的是十分原始的 TTY 终端,使用点阵字体进行显示,点阵字体不支持中文,因此无法显…...
使用kaggle命令下载数据集和模型
点击用户头像,点击Settings: 找到API,点击create new token,将自动下载kaggle.json: 在用户目录下创建.kaggle文件夹,并将下载的kaggle.json文件移动到该文件夹: cd ~ mv Downloads/kaggle.j…...
Citra 3DS模拟器:在电脑上重温任天堂掌机经典的完整指南 [特殊字符]
Citra 3DS模拟器:在电脑上重温任天堂掌机经典的完整指南 🎮 【免费下载链接】citra A Nintendo 3DS Emulator 项目地址: https://gitcode.com/GitHub_Trending/ci/citra 想要在Windows、macOS或Linux电脑上体验《精灵宝可梦XY》、《塞尔达传说&am…...
零基础实战:在AutoDL云端一键部署GPT-SoVITS并实现音色克隆API调用
1. 为什么选择AutoDL部署GPT-SoVITS 第一次接触音色克隆技术时,我和很多人一样被两个问题困扰:本地电脑配置不够怎么办?复杂的Linux环境怎么配置?直到发现AutoDL这个云端算力平台,所有问题迎刃而解。这里实测用RTX3090…...
终极指南:3分钟在Mac上解锁QQ音乐加密文件,实现跨设备播放自由
终极指南:3分钟在Mac上解锁QQ音乐加密文件,实现跨设备播放自由 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac,qmc0,qmc3转mp3, mflac,mflac0等转flac),仅支持macOS,可自动识别到QQ音乐下载目…...
Sendwithus模板与现代邮件客户端兼容性测试:终极解决方案
Sendwithus模板与现代邮件客户端兼容性测试:终极解决方案 【免费下载链接】templates Sendwithus Open Source Email Templates 项目地址: https://gitcode.com/gh_mirrors/temp/templates Sendwithus Open Source Email Templates是一套强大的开源邮件模板集…...
NIPAP:开源IP地址管理平台如何实现企业级网络规划效率提升300%
NIPAP:开源IP地址管理平台如何实现企业级网络规划效率提升300% 【免费下载链接】NIPAP Neat IP Address Planner - NIPAP is the best open source IPAM in the known universe, challenging classical IP address management (IPAM) systems in many areas. 项目…...
Godot引擎集成Lua脚本:实现原理、技术价值与实战应用
1. 项目概述:当Godot遇上Lua,一场引擎与脚本的“双向奔赴”如果你是一位游戏开发者,尤其是对Godot引擎有所涉猎的朋友,最近可能在一些社区或开源平台上瞥见过一个名为“godot_luaAPI”的项目。乍一看,这个名字似乎有些…...
如何5分钟搭建个人离线小说库:番茄小说下载器终极指南
如何5分钟搭建个人离线小说库:番茄小说下载器终极指南 【免费下载链接】fanqienovel-downloader 下载番茄小说 项目地址: https://gitcode.com/gh_mirrors/fa/fanqienovel-downloader 你是否曾经遇到过这样的情况:在通勤路上网络突然中断…...
【电力系统】阶梯碳下考虑 P2G-CCS 与供需灵活响应的 IES 优化调度附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室👇 关注我领取海量matlab电子书和数学建模资料 dz…...
AI 术语通俗词典:人工神经元
人工神经元是深度学习、神经网络和人工智能中非常基础的一个术语。它用来描述神经网络中最基本的数学计算单元。换句话说,人工神经元是在回答:模型怎样把多个输入信号加权合并,并转换成一个新的输出信号。如果说神经网络是一套由许多层组成的…...
离散时间傅里叶变换(DTFT)核心原理、MATLAB/Python实现与工程应用全解析
1. 项目概述:从连续到离散的信号分析桥梁信号处理领域里,我们常常需要分析一个信号的频率成分。对于连续时间信号,我们有强大的工具——连续时间傅里叶变换。但现实世界中的计算机和数字系统处理的都是离散的、一串串的数字序列,比…...
