自贡网站建设flask网站开发视频

web/2025/9/26 23:59:03/文章来源:
自贡网站建设,flask网站开发视频,网站关键词在哪,商务网站建设实训心得体会思维导图#xff1a; 一#xff0c;缺省参数 如何理解缺省参数呢#xff1f;简单来说#xff0c;缺省参数就是一个会找备胎的参数#xff01;为什么这样子说呢#xff1f;来看一个缺省参数就知道了#xff01;代码如下#xff1a; #includeiostream using std…思维导图 一缺省参数 如何理解缺省参数呢简单来说缺省参数就是一个会找备胎的参数为什么这样子说呢来看一个缺省参数就知道了代码如下 #includeiostream using std::cout; using std::endl; int Add(int a 70, int b 5) {return a b; }int main() {int ret1 Add();int ret2 Add(100, 80);cout ret1: ret1 endl;cout ret2: ret2 endl; } 这个程序打印的结果是什么呢通过程序运行可以看到打印的结果是 ret1:75 ret2:180 通过这个程序的运行你大概知道缺省参数是个什么东西了吧再来一个代码 #includeiostream using std::cout; using std::endl; void Print(int a 5, int b 6, int c 7) {cout a ;cout b ;cout c endl; } int main() {Print();Print(9);Print(8, 8);Print(6, 6, 6);return 0; } 这段代码打印的结果是什么呢程序运行打印结果如下 5 6 7 9 6 7 8 8 7 6 6 6 可以看到当我们在调用Print这个函数时如果在外面传入值的话在Print函数运行时就会使用外面传入的值。如果外面没有传入值的话就会使用函数参数被赋予的值。这个被赋予的值就是缺省值所以对应的参数就被叫做缺省参数缺省参数分为全缺省和半缺省半缺省不是缺省一半而是缺省部分参数。 使用缺省参数时要注意的点 1.在外面传入数值时要从左往右传。假如跳着传就会报错。   如对第二个函数Print如果这样传参就会报错 Print(,9,);//跳过第一个传参直接传给第二个参数  2.缺省参数要从右往左缺省。   如对第二个函数Print的缺省值调整成下面的样子就会报错 void Print(int a , int b 6, int c 7)  3.声明和定义中不能都给缺省值要给最好在声明中给。 缺省参数的作用 上面说了一大堆关于缺省参数的东西那这个缺省参数究竟有什么作用呢下面我们来回顾一个叫做顺序表的东西。为了将顺序表的空间开辟出来我们大概需要经历三步  typedef struct List {int *a;int size;int capacity; }List;void ListInit(List* pList) {pList-a NULL;pList-size 0;pList-capacity 0; } void PushBack(List* pList) {//检查是否为NULLmalloc空间// 检查是否需要扩容realloc//…… } int main() {List s;ListInit(s);PushBack(s);return 0; } 但是有了缺省参数我们便可以一步搞定了一开始想开多大就开多大。代码如下 typedef struct List {int* a;int size;int capacity; }List;void ListInit(List* pList, int n 4) {int* a (int*)malloc(sizeof(int) * n);pList-size 0;pList-capacity n; } int main() {List s;ListInit(s);//不像开辟就默认开辟四个(缺省值个)空间List p;ListInit(p, 100);//像开辟一百个空间就开辟一百个空间return 0; } 虽然在C语言中可以用宏定义来解决但是宏定义不够灵活。当我们每次开辟不同的空间大小时每次都要改宏当我们要搞两个顺序表时就要定义两个宏三个顺序表就要三个宏非常麻烦 二函数重载 函数重载这个概念就是祖师爷对于C语言语法的补充了。什么叫做函数重载呢构成函数重载的条件是什么呢下面我们就来探讨一下。 函数重载的条件 1.函数名相同 2.函数的参数类型不同or参数个数不同or参数的类型顺序不同。 比如下面的代码 int Add(int x, double y) {return x y; } //类型不同 int Add(int x, int y) {return x y; } //个数不同 int Add(int x, double y, int z) {return x y z; } //顺序不同 int Add(double x, int y) {return x y; } 这些情况便构成函数重载。在判断函数重载时有一个情况是非常容易迷惑人的就是返回值不同是不会构成函数重载的例如下列情况。 代码: int Add(int x, double y) {return x y; }double Add(int x, double y) {return x y; }char Add(int x, double y) {return x y; } //……还有很多只是返回值的类型不同的情况都不构成函数重载 函数重载的作用 有了函数重载那我们便可以少取名了。要使用相同功能但是数据类型or个数不同的函数时改一下参数的类型or个数or顺序就可以了 三引用 cpp中的引用可谓是一大进步。有了引用以后指针的很多功能都能被引用代替极大的提高了cpp程序的使用感受。既然引用如此可爱那我们一定要去认识一下它。 1.引用的格式 到底在cpp中如何写才能被称为是引用呢 现在来看看引用的格式特点类型变量名。当你看到这样的语句时便可以知道这个变量就是一个引用。如 int a 1; int b a;//b就是对a的一个引用。 2.引用的本质 如果用xxx引用一个变量有一个通俗的说法叫做给这个变量取了一个”xxx“的别名。 就比如周树人的笔名叫作鲁迅那提到鲁迅是不是就是提到周树人呢周树人的家门前有两棵树那鲁迅家门前有没有两棵树呢这两个的答案当然就是肯定的因为一个人的名字可以有很多但是人只有一个。cpp中的引用的意思就和这两个例子的意思差不多现在来验证一下 int main() {int a 1;int b a;//b就是对a的一个引用。//取两者的地址验证这两个变量是否指向同一个地址cout address of a: a endl;cout address of b: b endl;return 0; } 结果 address of a:001EFB84 address of b:001EFB84 通过验证可以看到引用b和a是指向同一块空间的两个不同的名字。 3.引用的特点 1.引用必须初始化 int main() {int a 1;int b ;//未对引用b初始化return 0; } 上面的代码就会报错。报错 2.引用只能引用一个实体就像人可以有很多名字但是人只有一个一样。 //引用多个实体 int main() {int a 1;int b a;int c 0;int b c;return 0; } 这样也会报错。报错 但是这样是可以的因为这是赋值 //赋值 int main() {int a 1;int b a;int c 0;b c;return 0; } 3.一个实体可以有多个别名就像一个人可以有多个名字一样。 //一个实体可以有多个别名 int main() {int a 0;int b a;int c a;int d a;//……return 0; } 4. 引用不能引用空指针 //不能引用空指针 int main() {int a nullptr;return 0; } 报错 //不能引用空指针 int main() {int a NULL;return 0; } 报错 四使用引用的两种形式 1.引用作参数输出型参数 当函数中的一个参数的作用是用来做输出型参数时便可以考虑使用引用做参数。 补充 1.输出型参数输出型参数的作用就是为了改变外面传入参数的数据。 2.输入性型参数输入型参数就是给函数内部传入数据。 这里经典的要传输入型参数的函数就是swap函数 void swap(int* p1, int* p2) {int tmp *p1;*p1 *p2;*p2 tmp; } 这个swap函数使用的是指针来交换a,b两个变量的数据。 //引用 void swap(int a, int b) {int tmp a;a b;b tmp; } int main() {int a 0;int b 10;cout swap前a: a endl;cout swap前b: b endl;swap(a, b);//swap函数调用cout endl;cout swap后a: a endl;cout swap后b: b endl;return 0; } 结果 swap前a:0 swap前b: 10swap后a:10 swap后b: 0 二引用做返回值 用引用做返回值是一个得十分谨慎的事情。因为引用卓返回值是有前提的前提就是出了返回值函数的作用域以后返回值的实体不能被销毁。 1.其它类型的函数返回是怎么做的呢 图解  通过上面的过程n的数据便被返回到ret中接收。 2.引用作返回值 引用做返回值就和一般类型的返回不同了。因为传引用返回是不产生临时变量的。 但是在n出了函数add以后n就被销毁了。这个时候就要看运气了。当n里面的值还没有被清理时便可以让ret接收当n中的被清理以后ret接收的值就是随机值了。所以当返回值在被接收前是会被销毁的参数时就要谨慎使用了。 应该传引用返回的场景 当变量是静态变量堆上的变量全局变量时便可以大胆的使用传引用返回。因为这些变量是不会被系统轻易销毁的。又因为使用传引用变量可以减少数据的拷贝所以传引用返回的效率会更高。所以在可以使用传引用返回的场景应该多多使用传引用返回。 补充利用传引用返回来修改顺序表里面的值和读取第i个位置的值。 C语言版本 //C语言读取第i个位置的值 int Find(List* ps, int i) {assert(ps);return ps-a[i]; } //修改第i个位置的值 void SLModify(List* ps, int i, int x) {assert(i ps-size);ps-a[i] x; } C利用引用版本 int SLAC(List ps,int i) {assert(i ps.size);return ps.a[i]; }从这里便可以看出cpp的引用有多香了哈哈 补充 使用引用时不能发生权限的扩大。可以发生权限的平移和缩小。 如 int main() {double a 1;int b a; } 这个程序是可以运行的但是换成下面的代码便会报错 int main() {double a 1;int b a; } 这是为什么呢这是因为在第一个程序中双精度浮点型的a要传给整型的b就会发生如下图所示的过程  在双精度浮点型的a传给b时会发生隐式转换这个过程会产生一个临时变量。临时变量有一个特点就是具有常性。所以在将a的值再赋值给b时就会发生权限的扩大那该如何搞定这个错误呢解决方法如下 int main() {double a 1;const int b a;//在b前面加一个const修饰符 } 这样b便也有了常性这样就相当于权限的平移了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82446.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

品牌营销型网站建设公司网站建设和程序开发哪个好

论文笔记整理:柏超宇,东南大学硕士。文章链接:https://arxiv.org/pdf/2011.01565.pdf来源:EMNLP 2020动机社交媒体每天都会产生大量的内容。为了帮助用户快速捕捉所需内容,关键词预测受到越来越多的关注。尽管如此&…

网站建设找客户渠道咋制作网站

风过无痕 原文 arcengine,深入理解游标Cursors,实现数据的快速查找,插入,删除,更新 深入理解游标Cursors,实现数据的快速查找,插入,删除,更新 1、查找数据Search Cursors //by yl …

用html5制作个人网站建站之星模板的使用

文章目录 1. 前言2. 不能被拷贝的类3. 不能被继承的类4. 只能在堆上创建对象的类5. 只能在栈上创建对象的类6. 只能创建一个对象的类(单例模式) 1. 前言 在实际场景中,我们在编写类的过程中总会遇到一些特殊情况,比如设计一个类不…

网站建设微信端如何把网站做的和别人一样吗

QEventLoop和QtConcurrent可以结合使用达到主线程ui不阻塞同步执行的效果,但是要小心避坑,查看如下代码: QEventLoop loop; QtConcurrent::run([&]() {doSomething();loop.quit(); }); loop.exec();上述写法存在两个问题: Q…

大丰网站建设公司电商网站合作

由于最近比较忙,所以本周搞了一个相对简单的验证码,就是抖音Tiktok的滑块验证码,这也是接到客户的一个需求。这种验证码通常在电脑端登录抖音、巨量引擎的的时候出现。 首先看一下最终的效果: 验证码识别过程 1、利用爬虫采集图…

沈阳网站排名工具贵州省城乡建设厅网站

用户系统: 之前提到,linux是个多用户系统,所以要使用linux,首先你得是个用户 用户:普通用户管理员 每一个用户有自己的用户名密码, 会话(session):一个终端使用服务器的全过程 从你用户登录,到你…

网站制作方案大全弄美团网站的一般一个做赚多少钱

由全国高等院校计算机基础教育研究会指导,利亚德集团和爱迪斯通科技发起的数字人设计大赛正在火热进行中,同时进行的元宇宙数字人设计大赛校园行活动也正式拉开序幕,12月13日校园行活动—中国戏曲学院开讲。划重点:此次大赛已成为…

注入漏洞网站源码苏州360推广网站建设

文档链接:https://programmercarl.com/ LeetCode509.斐波那契数 题目链接:https://leetcode.cn/problems/fibonacci-number/ 思路: 动规五部曲: 这里我们要用一个一维dp数组来保存递归的结果 1.确定dp数组以及下标的含义 d…

网站做不做账网站建设国家有补贴吗

等保的全称是信息安全等级保护,是《网络安全法》规定的必须强制执行的,保障公民、社会、国家利益的重要工作。 官方定义:等级保护是对信息和信息载体按照重要性等级分级别进行保护的一种工作,指对国家重要信息、法人和其他组织及公…

建行商城网站网站维护更新费用

2653: middle Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 2381 Solved: 1340[Submit][Status][Discuss]Description 一个长度为n的序列a,设其排过序之后为b,其中位数定义为b[n/2],其中a,b从0开始标号,除法取下整。给你一个长度为n的序…

整站排名怎么提升网站排名

【分享】Android JNI实例​ Android的SDK中没有包括JNI的支持,而且对如何支持JNI也没有任何文档说明。不过既然整个Android平台是开源的,我们可以通过Google发布的源代码来找到一些线索(比如frameworks/base/media/jni/目录)&…

怎么登陆建设u盾网站网络销售平台排名

目录 前言: 优点: 缺点: 饿汉式(静态变量方式) 懒汉式(线程不安全) 懒汉式(双重检查锁定) 推荐方式Lazy 总结: 前言: 这种模式涉及到一个单一的类&a…

大气集团网站模板免费素材库图片

什么是JVM? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机…

网站制作的主要流程怎么建立公司的网站吗

身份证正则判断 今天分享的是身份证的正则判断,在很多时候需要到,所以在这里记录下来。之前做正则判断的时候,有一些小瑕疵,判断不够全面,正则判断,结构紧凑,全面的判断很重要,所以…

建网站 技术wordpress加图标

父向子通信 1.定义props 子组件中,定义期望接收的属性。例如,在子组件的script部分: export default {props: {message: String // 假设父组件要传递一个字符串类型的数据} } 2.传递数据 在父组件的模板中,通过属性绑定的方式将…

wordpress 企业网站模板dw网页制作视频

要在 Python 中使用 MySQL 数据库进行增删改查(CRUD)操作,你可以使用 pymysql 库。以下是一些示例代码,展示如何实现这些操作。 首先,确保你已经安装了 pymysql。如果没有安装,可以通过以下命令安装&#…

做盗版视频网站违法吗湖北智能网站建设推荐

伦敦大学学院(UCL)的研究团队,提出了“一个激进的新模型,与所有数据相匹配,并最终优雅地展示出了古希腊人眼中的宇宙”。1901年,在希腊岛屿安提基特拉的海岸,潜水员偶然发现了一艘古代沉船。沉船中的一件文物&#xff…

做网站也是一门技术外贸网站英文版

一、MySQL自带的压力测试工具——Mysqlslapmysqlslap是mysql自带的基准测试工具,该工具查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。mysqlslap为mysql性能优化前后提供了直观的验…

带搜索网站建设视频教程木纹背景的精致wordpress企业主题

美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在…