C++逆天合集
1.基础知识
1. 创建 编译 运行
touch a.cpp
gedit a.cpp
g++ -o a.out a.cpp
./a.out
2. a++ 等价于a = a + 1
3. ::运算符
4. 类型转换
赋给无符号类型超出其表达范围时,对总数取模得余数
赋给带符号类型超出其表达范围时,结果是undefined
一个算数表达式中既有无符号数又有有符号数时,会将有符号数转化成无符号数
5. 初始化不是赋值
初始化是创建变量时赋予其一个初始值
赋值是把对象的当前值擦除,以新值替代它
四种初始化方式(例 int a{0}; --C++11)
6. 建议初始化每一个内置类型的变量
7. extern
extern int i; #声明
int i; #声明并定义
extern int i = 1; #赋初值,抵消了extern的作用,变成定义了
8. 变量能且只能被定义一次,但是可以多次被声明
9. 引用
引用必须初始化,将和它的初始值对象一直绑定在一起,初始化必须是一个对象
引用不是对象,只是为已经存在的对象所起的另一个名字
引用本身不是一个对象,所以不能定义引用的引用
10. 指针
与引用类似,指针也实现了对其他对象的间接访问
指针本身就是对象,允许对指针赋值和拷贝,且在指针的生命周期内可以先后指向几个不同的对象
指针无须在定义时赋初值,和其他内置类型一样,在块作用域内定义的指针如果没有初始化,也将拥有一个不确定值
在声明语句中指针的类型实际上被用于指定它所指向对象的类型,所以二者必须匹配
指针值的四种状态:1.对象 2.紧邻对象所占空间的下一个位置 3.空指针 4.除此之外的无效指针
试图拷贝或以其他方式访问无效指针的值都会引发错误,编译器不负责检查这类错误,试图使用未初始化的变量也是如此
空指针
int *p = nullptr; //C++11,其可以转化为任意一类类型的指针
int *p = 0;
int *p = NULL;
面对一条比较复杂的指针或引用的声明语句时,从右向左阅读有助于弄清楚真实含义
int *p;
int *& r = p;
&说明r是一个引用,*说明r引用的是一个指针,int说明r引用的是一个int指针
相关文章:
C++逆天合集
1.基础知识 1. 创建 编译 运行 touch a.cpp gedit a.cpp g -o a.out a.cpp ./a.out 2. a 等价于a a 1 3. ::运算符 4. 类型转换 赋给无符号类型超出其表达范围时,对总数取模得余数 赋给带符号类型超出其表达范围时,结…...
stm32之15.超声波与灯光功能一起实现(进阶)
主函数代码修改 --------------------- 源码 int main(void) {uint32_t t0;uint32_t distance;NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);led_init();key_init();/* 初始化串口1波特率为115200bps,若发送/接收数据有乱码,请检查PLL */usart1_ini…...
美创科技荣获“2023年网络安全优秀创新成果大赛—杭州分站赛”两项优胜奖
近日,由浙江省互联网信息办公室指导、中国网络安全产业联盟(CCIA)主办,浙江省网络空间安全协会承办的“2023年网络安全优秀创新成果大赛-杭州分站赛”正式公布评选结果。 经专家评审,美创科技报名参赛的解决方案—“医…...
使用gdb+gdbserver远程调试aarch64平台程序
嵌入式开发板子(aarch64)程序编译(在ubuntu远程调试) 1.支持coredump, 并且设置coredump路径等 //生成文件路径与格式 echo /data/coredump/%e-%t-%p-%c.core > /proc/sys/kernel/core_pattern // 设置开启coredump 并设置显示文件大小 void set_coreDumpAvalib(const rl…...
【CesiumJS入门】(9)获取地表两点的距离及中心点——EllipsoidGeodesic
前言 一般情况下,我们可以直接通过Cesium.Cartesian3.distance(left, right)来获取两点的距离,但获取到的是两点的直线距离: const start new Cesium.Cartesian3.fromDegrees(113,23); const end new Cesium.Cartesian3.fromDegrees(113,…...
OLED透明屏介绍:领先科技的革命性创新
OLED透明屏作为一项领先的科技创新,在产品设计和用户体验方面展现出了巨大的潜力。 在这篇文章中,尼伽将介绍OLED透明屏的定义、特点、应用领域以及未来发展趋势,以帮助您全面了解OLED透明屏。 一、OLED透明屏的定义与原理 1.1 定义&#x…...
ESXI补丁更新
一、准备工作 VMware 产品的补丁可从https://customerconnect.vmware.com/patch下载 使用 vSphere Web Client 将补丁上载至 ESXi 主机中的数据存储。(注意:VMware 建议在数据存储中创建一个新目录并将补丁文件上载至此目录。) 迁移主机上正…...
【每日易题】数组下标的逆天用法——你见过把数组存储的值当作数组下标来解题的吗?
君兮_的个人主页 勤时当勉励 岁月不待人 C/C 游戏开发 Hello,米娜桑们,这里是君兮_,在最近是刷题中,遇到了一种非常新奇的数组下标的用法,今天想来给大家分享一下这种神奇的思路和方法,希望能在你遇到类似问题时能通…...
mysql基本操作
常用的数据类型 int 整型用于定义整数类型的数据float 单精度浮点4字节32位 准确表示到小数点后六位 double 双精度浮点8字节64位双精度浮点8字节64位char 固定长度的字符类型用于定义字符类型数据varchar可变长度的字符类型 text文本image图片de…...
vue组件的使用
一、首先要穿件组件构造器对象,或者导入组件 1..在本部分注册组件其中组件为子组件 2.在本部分注册组件 二、而后注册组件 1.在本部分注册组件其中组件为子组件 2.在本部分注册组件 三、 接着,使用组件。 1.在本部分注册组件其中组件为子组件 其中v-i…...
Axure设计之日期选择器(年月选择)
在系统中,日期选择器经常会用到,包括日历日期的选择、日期时间的选择和日期范围的选择,一般是下拉列表的形式进行选择。Axure没有自带的日期选择器,下面教大家如何在Axure中制作真实日期选择(年月选择)效果…...
CAD泰森多边形框架3D插件
插件介绍 CAD泰森多边形框架3D插件可用于在AutoCAD软件内生成三维Voronoi框架结构实体模型,适用于多孔Voronoi科研论文渲染绘图、Voronoi框架有限元建模、Voronoi空间结构优化等方面的应用。 使用说明 插件可设置生成的几何尺寸、晶格尺寸及边框直径等信息。 插…...
Django的render()函数的三个主要参数详解,特别是第三个字典类型的参数context
当在Django中使用 render() 函数时,它有三个主要参数:request,template_name,和 context。第三个参数,即 context,是一个字典,用于将数据传递给模板以进行渲染。 在下面的代码中: …...
统计不同字段的值域
目录 背景数据库表 需求目标SQL知识点注意点 背景 数据库 PostgreSQL 表 tbl_mr hosxblyfsylfkfs广东医院1301广东医院1404浙江医院0307浙江医院0209………… tbl_emr hosxblyfsylfkfs广东医院9999903广东医院1408浙江医院9507浙江医院0214………… 其中 xb 字段为 num…...
js this 指的是什么
1 对象中方法 函数中的this 指的是包含它的对象, 子对象中的this指的是全局在浏览器中是 window 对象 var obj1 {this1funcA: function() {var obj2 {innerFunc: function() {this2}};obj3{ this3 }}obj4{ this4 } }; 在这个对象中,this 的指向会随着调用上…...
用pytorch实现Resnet
ResNet(Residual Network)是一种深度卷积神经网络架构,由Kaiming He等人于2015年提出。它在计算机视觉领域引起了革命性的变革,使得训练更深的神经网络成为可能,超越了传统网络架构的限制。 ResNet的主要创新在于…...
C++类成员的访问权限以及类的封装
C通过 public、protected、private 三个关键字来控制成员变量和成员函数的访问权限,它们分别表示公有的、受保护的、私有的,被称为成员访问限定符。所谓访问权限,就是你能不能使用该类中的成员。 Java、C# 程序员注意,C 中的 publ…...
Linux 多线程解决客户端与服务器端通信
一、一个服务器端只能和一个客户端进行通信(单线程模式) 客户端代码ser.c如下: #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<sys/socket.h> #include<netinet…...
FMX的TListBox单选列表框
TListBox功能比较全,对于选择项,有“两种”模式,一种就是ListItem选中(界面上就是焦点和颜色变化),可以无,单选和多选。另一种是通过CheckBox来选择ListItem的选中。默认下,ShowChec…...
prompt工程(持续更新ing...)
诸神缄默不语-个人CSDN博文目录 我准备想办法把这些东西整合到我的ScholarEase项目里。到时候按照分类、按照prompt生成方法列一堆选项,用户自己生成prompt后可以选择在ScholarEase里面聊天,也可以复制到别的地方(比如ChatGPT网页版之类的&a…...
Path of Building PoE2:终极流放之路2角色构建指南与实战教程
Path of Building PoE2:终极流放之路2角色构建指南与实战教程 【免费下载链接】PathOfBuilding-PoE2 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding-PoE2 想要在《流放之路2》中打造完美角色吗?Path of Building PoE2&#…...
5个关键步骤:使用SUMO-RL构建城市智能交通信号控制系统
5个关键步骤:使用SUMO-RL构建城市智能交通信号控制系统 【免费下载链接】sumo-rl Reinforcement Learning environments for Traffic Signal Control with SUMO. Compatible with Gymnasium, PettingZoo, and popular RL libraries. 项目地址: https://gitcode.co…...
揭秘K12课堂AI转型真相:3个被90%学校忽略的PlayAI部署陷阱及72小时应急修复指南
更多请点击: https://intelliparadigm.com 第一章:PlayAI教育领域应用案例 PlayAI 作为面向教育场景的轻量级AI交互平台,已在多个教学实践中展现出显著的适配性与可扩展性。其核心优势在于无需深度编程基础即可构建个性化学习路径、实时学情…...
OpenCore Legacy Patcher终极指南:三步让老Mac焕发新生,轻松运行最新macOS
OpenCore Legacy Patcher终极指南:三步让老Mac焕发新生,轻松运行最新macOS 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 还在为老旧…...
如何高效实现Android Studio中文界面革命性升级
如何高效实现Android Studio中文界面革命性升级 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本) 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 你是否曾经因为Android Studio的英…...
AI落地的七道锯齿:从工业质检看真实工程边界
1. 项目概述:这不是一篇讲魔法的童话,而是一份AI落地现场的工程手记“Magic Wands Don’t Exist: The Jagged Frontier of AI”——这个标题像一记闷棍,打在当下满屏“一键生成”“秒级响应”“智能体自主进化”的宣传泡沫上。我第一次看到它…...
QQ音乐加密音频一键解密:qmcdump终极指南
QQ音乐加密音频一键解密:qmcdump终极指南 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcdump 你是否曾为QQ音乐下…...
萌新学习第九天,python篇,内置函数
内置函数:一句话:Python 自带的、不需要A import 导入就可以直接使用的函数。比如你经常用的 print()、len()、input()、type() 都是内置函数。输出类:函数作用print()打印输出input()从键盘读取输入format()格式化字符串类型转换类:函数作用…...
告别手动启动:在Windows Server上把Gitblit配置成稳定可靠的后台服务
Windows Server生产环境Gitblit服务化部署全指南 在团队协作开发中,代码仓库的稳定性和可靠性直接影响着整个研发流程的效率。对于使用Windows Server作为基础架构的企业来说,将Gitblit从简单的命令行工具转变为系统服务,是实现7x24小时不间断…...
超自动化巡检:破解运维人员短缺的利器
在数字化转型加速推进的今天,企业IT基础设施正经历着前所未有的指数级增长——物理服务器、虚拟机、容器集群、云原生环境、边缘节点……运维对象的数量与种类日新月异。然而,与之形成鲜明对比的是,运维团队的规模却难以等比扩充。招不到人、…...
