• 2025-01-18C++ 移动语义与完美转发
    移动语义 如果一个对象中有堆区资源,需要编写拷贝构造函数和赋值函数,实现深拷贝。深拷贝把对象中的堆区资源复制了一份,如果源对象(被拷贝的对象)是临时对象,拷贝完就没什么用了,这样会造成没有意义的资源申请和释放操作。如果能够直接使用源对象拥有的资源,可以节省资源申请和释放
  • 2025-01-18【华为OD技术面试手撕真题】- C++手撕技术面试八股文(2)
    文章目录一、struct结构体和共同体union共同体的区别1、内存分配2、成员访问3、使用场景4、定义方式5、总结二、堆和栈的区别1、内存分配方式2、生命周期3、大小限制4、内存访问速度5、数据存储6、多线程的影响三、什么是内存泄漏?面对内存泄漏和
  • 2025-01-12C语言学习笔记:运算
    运算在C语言中的运算共有以下几种:-算术运算:+ - * / %(模运算)-赋值运算:将等号的右值赋给左值-关系(比较)运算:其结果为真(非0)、假(0)== != > >= < <= -逻辑运算:&& 并且,||  或者,!  非。-位运算-三元运算对于算数运算进行介绍,算数运算和我们平
  • 2025-01-08左值引用和右值引用
    左值引用和右值引用左值和右值的定义关于左值的定义,在《C++PrimerPlus》当中是这样定义的左值是什么呢?左值参数是可被引用的数据对象,例如,变量、数组元素、结构成员、引用和解除引用的指针都是左值。非左值包括字面常量(用引号括起的字符串除外,它们由其地址表示)和包含多项的
  • 2025-01-04语义移动(move)&& 完美转发(forward)
    语义移动(move)&&完美转发(forward)左值和右值通俗的讲,左值就是等号左边的值,右值就是等号右边的值。左值是可以取地址的,右值是不可以取地址的。左值可以理解为有名字的变量,右值可以理解为没有名字的临时变量。左值引用和右值引用左值引用是对左值的引用,右值引用是对右值的引
  • 2025-01-03c++之左值引用 右值引用 万能引用
    详细大家无论是在阅读代码,还是阅读文档的时候经常看到这几个词或者对应的符号,但是可能也不是很清楚他们到底有哪些区别,本文将对这几个概念详细深入的介绍。左值引用左值引用的表现形式,如下所示:intx=2;int&a=x; //正确,这里a就是一个左值引用int&a=2;//错误,临
  • 2024-12-30汇编指令4
    "imul"有符号数相乘有三个操作数,第一个操作数默认和eax相乘,当有两个操作数的时候,默认最后结果赋给左值,当有三个操作数的时候,第三个操作数一定是一个立即数(不能是寄存器和内存地址),第二个操作数可以是寄存器也可以是内存地址,第二个操作数和第三个操作数相乘并赋给左值.1.1可自
  • 2024-12-28C++中的完美转发
    完美转发背景:C++的参数传递常常面临以下问题:左值和右值:左值和右值在处理上有区别,通常左值被传递时需要按值传递,而右值可能会被按引用传递以避免不必要的拷贝引用折叠(ReferenceCollapsing):C++中的引用折叠规则(T&&类型的引用会折叠成不同的类型)也会影响完美转发的实现需
  • 2024-12-20C++ 11(1)
    1.C++11的发展历史2.列表初始化2.1C++98传统的{}C++98中⼀般数组和结构体可以⽤{}进⾏初始化。2.2C++11中的{}•C++11以后想统⼀初始化⽅式,试图实现⼀切对象皆可⽤{}初始化,{}初始化也叫做列表初始化。•内置类型⽀持,⾃定义类型也⽀持,⾃定义类型本质是类型转换,中间会
  • 2024-12-10[C++11] 右值引用和移动语义
    目录左值引用和右值引用左值引用与右值引用比较​编辑右值引用使用场景和意义左值引用的使用场景:右值引用和移动语义移动拷贝移动赋值右值引用引用左值及其一些更深入的使用场景分析完美转发完美转发维持值自身属性完美转发的使用场景左值引用和右值引用什么
  • 2024-12-02【C++】右值引用全面揭秘:解锁 C++11 的性能革命与移动语义奥秘!
    文章目录右值和左值的基本概念左值引用和右值引用右值引用的主要用途移动语义只有拷贝构造和赋值重载而没有移动语义的传值返回增加移动构造和移动赋值的传值返回引用折叠与完美转发C++11引入了右值引用,这是C++语言的一个重要特性,目的是为了提高程序的性能,尤其在对
  • 2024-11-29C++练级计划->《右值引用和移动语义》
    目录什么是左值右值?什么是左值?什么是右值?左值引用和右值引用左值引用右值引用右值引用使用场景和意义使用场景:左值引用的短板右值引用和移动语义:移动构造:右值引用的使用场景+1:完美转发万能引用什么是左值右值?什么是左值?左值是一个有具体地址的值。左值可
  • 2024-11-29左值和右值的概览及其使用方法
    左值和右值的概念及其使用方法前言一、什么是左值?什么是右值?二、左值引用和右值引用1.左值引用2.右值引用三、常量引用总结前言本文章详细讲解左值和右值的概念和使用方法,即展示了它的应用场景:移动语义和完美转发一、什么是左值?什么是右值?在C++中,所有的值不是
  • 2024-11-23【C++】C++11引入的新特性(1)
    生命有多长,不悲不喜。青春多荒凉,不骄不躁。假如生命止于明天,那么我们能必须珍惜今天。
  • 2024-12-13ARM - Linux内核i2c-tools命令
    转自 https://zhuanlan.zhihu.com/p/509163257一、i2cdetect1、命令root@linaro-alip:/#i2cdetectError:Noi2c-busspecified!Usage:i2cdetect[-y][-a][-q|-r]I2CBUS[FIRSTLAST]i2cdetect-FI2CBUSi2cdetect-lI2CBUSisanintegeroranI
  • 2024-12-12智能病历系统是什么
    智能病历系统‌是一种利用人工智能技术对传统病历系统进行智能化改造的系统。它通过机器学习和自然语言处理等技术,能够自动分析和处理病历信息,提高医疗工作的效率和准确性。智能病历系统的主要功能包括:‌病历信息自动化处理‌:系统能够自动提取病历中的关键信息,如患者的基本信息
  • 2024-12-07test plateform-00-测试平台设计蓝图规划
    前言大家好,我是老马。最近想设计实现一个测试平台,基本的拼图已经收集的差不多了。后续就是一步步来落地实践了!设计蓝图技术生态测试开源组件data-factory:Autogeneratemockdataforjavatest.(便于Java测试自动生成对象信息)junitperf:Junitperformance
  • 2024-12-07打卡信奥刷题(375)用C++信奥B3618[普及组/提高] 寻找团伙
    寻找团伙题目描述世界局势风云变幻,你想办一件大事。办事自然要有人参与,你能从nnn个人里面挑选一部分人共襄盛举。要办这件事,一共涉及
  • 2024-12-05数据执行保护(DEP,Data Execution Prevention) 是一种安全机制,旨在防止恶意代码在计算机的特定内存区域执行。它通过标记某些内存区域为“不可执行”,从而阻止攻击者在这些区域注
    数据执行保护(DEP,DataExecutionPrevention)是一种安全机制,旨在防止恶意代码在计算机的特定内存区域执行。它通过标记某些内存区域为“不可执行”,从而阻止攻击者在这些区域注入并执行恶意代码。DEP的工作原理DEP的基本思想是,操作系统通过对内存区域的权限控制,防止程序在某些特
  • 2024-11-30通过命令符创建vue项目
    一、环境搭建1.检查node的安装,没有就需要下载(可以使用nvm安装node)①Win+R指令,打开命令框输入cmd②检查nvm是否安装成功(安装成功会显示对应的版本)nvm-v2.配置淘宝源在安装nvm的文件夹里面有setting.txt文件,在里面插入以下内容:node_mirror:https://npm.taobao.or
  • 2024-11-29Windows Cmd查询端口号对应的进程及关闭进程
    WindowsCmd查询端口号对应的进程及关闭进程1.使用netstat查询端口和进程信息运行以下命令:netstat-ano|findstr:端口号示例:如果要查询端口80812.查找进程ID所属的程序通过上面命令的输出获取到PID(进程ID)后,可以使用以下命令查看对应的程序名称:tasklist|fi
  • 2024-11-27【Unity 插件】MiniMonsters - Turn Based Monster Battles快速构建回合制怪物对战游戏
    MiniMonsters-TurnBasedMonsterBattles是一款专为Unity开发者设计的插件,旨在帮助开发者快速构建回合制怪物对战游戏。该插件提供了一整套完整的系统,包括怪物战斗逻辑、技能系统、回合制战斗管理等功能,使得开发者能够专注于游戏内容的创作,而不需要从零开始编写复杂的战
  • 2024-11-23【Solution】用C语言代码绘制线性函数包围图
    题目:绘制左边图的众多*输出图像,函数已给出:y=1,y=-x+2n,y=x。解决方案: 思路对于原来的坐标几何图形,2<=n,y<=x<=2n-y,1<=y<=x。我们用来写C代码的函数首先要确定三角形高的范围,至少要2。将图形分隔成上下两部分。从最高的顶点到三角形高的部分,和其下面的部分。使用line