当前位置: 首页 > news >正文

能够做代理的网站石家庄seo顾问

能够做代理的网站,石家庄seo顾问,抖音推广佣金平台,5g网络架构目录 1.缺省参数 1.1缺省参数的概念 1.2缺省参数的分类 1.3缺省参数使用场景 2.函数重载 2.1函数重载的概念 2.2构成函数重载 1.缺省参数 1.1缺省参数的概念 概念:缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时,如果没…

目录

1.缺省参数

1.1缺省参数的概念

1.2缺省参数的分类

1.3缺省参数使用场景

2.函数重载

2.1函数重载的概念

2.2构成函数重载


1.缺省参数

1.1缺省参数的概念

概念:缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时,如果没有指定实参则采用该形参的缺省值,否则使用指定的实参

void Func(int a = 0)
{cout << a << endl;
}
int main()
{Func();   // 没有传参时,使用参数的默认值Func(10); // 传参时,使用指定的实参return 0;
}

解释:拿上面代码为例,形参a就是缺省参数,当我们给他传参时,a就是我们给的值,如果我们没有传参,它就是默认a为0

1.2缺省参数的分类

1.全缺省

void Func(int a = 10, int b = 20, int c = 30)
{cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;
}
int main()
{Func(1, 2, 3);Func(1, 2);Func(1);Func();return 0;
}

全缺省给参数传值的时候可以全传也可以部分传,可以看上面代码传参的写法 

2.半缺省

注意:半缺省参数是从右往左给的,不能从左往右给(因为从右往左没有歧义)

错误示例:

从左往右会有歧义,假如我们传1,2,我们想把2传给c,那1是给a还是b,就会产生歧义

void Func(int a = 10, int b = 20, int c)
{cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;
}
int main()
{Func(1, 2);return 0;
}

正确示例: 

void Func(int a, int b = 10, int c = 20)
{cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;
}
int main()
{Func(1, 2, 3);Func(1, 2);Func(1);return 0;
}

半缺省给参数传值的时候,缺省的地方可以不给值,但是没有缺省的地方不给值就会报错

1.3缺省参数使用场景

假如我们现在想实现两个栈,一个插入100个数据,另一个插入10个数据,这个时候我们就不能固定开辟了,因为开多了浪费,开少了不够,这个时候缺省参数就能解决这样的问题:

struct Stack
{int* a;int capacity;int size;
};
void Init(struct Stack* ps, int n = 4)
{ps->a = (int*)malloc(sizeof(int) * n);
}
int main()
{//要插入100个数据struct Stack st1;Init(&st1, 100);//要插入10个数据struct Stack st2;Init(&st2, 10);return 0;
}

 注:缺省参数要在声明的时候给,不能在定义的时候给

2.函数重载

2.1函数重载的概念

函数重载:是函数的一种特殊情况,C++允许在同一作用域中声明几个功能类似的同名函数,这
些同名函数的形参列表(参数个数 或 类型 或 类型顺序)不同,常用来处理实现功能类似数据类型
不同的问题。

2.2构成函数重载

1.参数个数不同

void f()
{cout << "f()" << endl;
}
void f(int a)
{cout << "f(int a)" << endl;
}

2.参数类型不同

int Add(int left, int right)
{cout << "int Add(int left, int right)" << endl;return left + right;
}
double Add(double left, double right)
{cout << "double Add(double left, double right)" << endl;return left + right;
}

3.参数类型顺序不同

void f(int a, char b)
{cout << "f(int a,char b)" << endl;
}
void f(char b, int a)
{cout << "f(char b, int a)" << endl;
}

http://www.hkea.cn/news/327614/

相关文章:

  • 展览展会网页模板下载河南网站优化排名
  • 自己做网站上传视频疫情二十条优化措施
  • 网站排名上升 优帮云网络销售培训学校
  • 对于政务网站建设的建议网站收录优化
  • 网站策划与建设阶段的推广方法网络软文怎么写
  • 漳州公司做网站重庆网站建设
  • 十大网络平台有哪些网站关键词排名seo
  • 建b2c网站google官方下载安装
  • 广州b2b网站建设公司推广网站
  • 新乡市封丘县建设局网站百度教育官网登录入口
  • 网站开发项目点击器
  • 建公司网站需要多少钱推广普通话手抄报内容资料
  • 东莞市建设监督网站首页app宣传推广方案
  • 网站设计基本功能域名免费注册0元注册
  • 徐州网站建设的特点营销咨询公司
  • 网站建设问题表在seo优化中
  • 网站建设公司 倒闭店铺推广方法
  • 网站搭建素材短视频培训
  • amazon虚拟机免费做网站百度信息流怎么收费
  • 深圳做网站推广公司聊城seo整站优化报价
  • 深圳专业app网站开发企业网站建设原则是
  • 网站开发师职责柳州网站建设哪里有
  • 自己做的网站怎么改电话网络推广代运营公司
  • 做水果的网站有哪些google高级搜索
  • 怎么用网站做文案百度推广可以自己开户吗
  • 做的好的新闻网站排名优化
  • 购物网站开发功能百度联盟个人怎么接广告
  • 网站如何盈利流量费网站seo搜索引擎的原理是什么
  • 泰安房产价格最新域名年龄对seo的影响
  • 网站打不开怎么回事引流推广平台有哪些