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

多语网站如何快速建设自适应网站

多语网站,如何快速建设自适应网站,新手做电商需要投资多少,毕节网站建设推广目录1、变量的作用域1. 变量的作用域分类2. Unary Scope Resolution (一元作用域解析运算符)2、重载函数3、带有默认参数值的函数4、重载函数 VS 带有默认参数值的函数5、内联函数#xff08;Inline Function#xff09;1. 普通函数的优缺点2. 使用内联函数3. 定义内联函数4.… 目录1、变量的作用域1. 变量的作用域分类2. Unary Scope Resolution (一元作用域解析运算符)2、重载函数3、带有默认参数值的函数4、重载函数 VS 带有默认参数值的函数5、内联函数Inline Function1. 普通函数的优缺点2. 使用内联函数3. 定义内联函数4. 内联函数的使用5. 将内联函数的声明和定义分离6. 内联函数使用限制1、变量的作用域 1. 变量的作用域分类 a. 全局作用域全局变量 b. 局部作用域局部变量 局部作用域可以分为文件作用域、函数作用域以及函数内部的块作用域。 如果外部代码块与其内嵌代码块有同名的变量那么会产生同名覆盖这种现象。此时要遵循“就近原则”来判断哪个同名变量起作用 例如下面func2中for循环中又定义了一个i在运行sumi;时根据就近原则选择for定义的i而不是一开始定义的i。 在cout中的i是一开始定义的i因为已经跳出for循环了。 2. Unary Scope Resolution (一元作用域解析运算符) If a local variable name is the same as a global variable name, you can access the global variable using ::globalVariable. (局部变量名与全局变量名相同时可使用 :: 访问全局变量要定义在主函数外部) The :: operator is known as the unary scope resolution.:: 这个运算符被称为一元作用域解析运算符 #include iostream int v1 10; int main() {int v1 5;std::cout local variable v1 is v1 std::endl;std::cout global variable v1 is ::v1 std::endl;return 0; }2、重载函数 重载函数是在同一个名字空间中存在两个或者多个具有相同名字的函数所构成的语法现象。 调用重载函数的语句是由编译器在编译期确定的。 编译器判断某个函数调用语句所对应的重载函数时判断依据是函数参数的类型、个数和次序。 如果编译器无法判定就会报告二义性错误。 3、带有默认参数值的函数 函数的参数可以指定默认值。 指定默认值时要保证带有默认值的参数要位于函数参数列表的右侧。 如下 调用带有默认参数值的函数时如果不指定带有默认值的参数则该参数自动被赋为默认值。且调用的时候应该实参前置。 C规定(C03/C11) A default argument shall not be redefined by a later declaration (not even to the same value). (函数重定义/声明时不允许重定义默认参数) int Add (int a, int b 3); // 原型声明 int Add (int a, int b 3) { // 错误不能重定义默认参数值 // 尽管与原型声明相同 } 如下 #include iostream void printArea(double radius 1); int main() {printArea();printArea(4);return 0; } void printArea(double radius) {std::cout Area is radius*radius*3.14 std::endl; }4、重载函数 VS 带有默认参数值的函数 此时不能判断调用的是哪个函数。 5、内联函数Inline Function 1. 普通函数的优缺点 1.1. Pros(优点): 易读易维护 1.2. Cons (缺点): 调用时有开销 函数调用时参数及部分CPU寄存器的内容进栈控制流跳转 函数返回时返回值及寄存器值出栈控制流跳转 2. 使用内联函数 目的减小函数调用开销 方法代码插入到调用处 结果导致程序变大 3. 定义内联函数 定义函数时在函数类型前面加上 inline 关键字则该函数就成为内联函数。 一般而言内联函数的声明和定义都在一起。我们很少将内联函数的声明和定义分开编写。 // 定义内联函数inline int max (int a, int b) {return (a b ? a : b);} // Calling (调用内联函数)int x max (3, 5);int y max (0, 8);// Inline expansion(内联展开)int x (3 5 ? 3 : 5);int y (0 8 ? 0 : 8); 4. 内联函数的使用 编译器在遇到内联函数的调用时会将内联函数的函数体展开到调用位置从而避免函数调用的开销。 一般来说内联函数只有在需要考虑程序运行性能的环境中才使用。 程序员所用的 inline 关键字只是对编译器的一个请求。内联函数是否展开是由编译器决定的。 5. 将内联函数的声明和定义分离 在C标准7.1.2.4节有如下说明 An inline function shall be defined in every translation unit in which it is odr-used and shall have exactly the same definition in every case (3.2). [ Note: A call to the inline function may be encountered before its definition appears in the translation unit. —end note ] 内联函数应在每个翻译单元中定义。在该翻译单元中它遵循“单一定义规则ODR”并且所有该内联函数定义必须完全相同。[注释在翻译单元中可能会在内联函数定义出现之前就有调用该内联函数的语句] 因此内联函数声明和定义分类的用法如下 #include iostreaminline void foo();int main() {foo();}inline void foo() {std::cout Hi\n;}6. 内联函数使用限制 适用于频繁调用的短函数 不适用于多处调用的长函数 内联函数只是一种编译机制 inline是对编译器的请求而不是命令 大多数编译器并不把带有循环、递归、静态变量或者代码较多的函数进行内联编译
http://www.sadfv.cn/news/12135/

相关文章:

  • 太原网站快速排名提升seo关键词优化公司哪家好
  • 长春建站的费用谷歌竞价排名推广公司
  • 世界购物网站排名网站怎么做才能让更多平台展现
  • 网站开发网页制作薪资旅游网站建设的目的
  • 合肥建设银行网站首页有哪些单页网站
  • 辽宁智能网站建设推荐wordpress百度云盘
  • 鲜花销售网站开发费用怎么做营销
  • 广告公司寮步网站建设山东网站建设哪家权威
  • 软件网站建设专业网站建设一个月做十单
  • 智慧团建网站入口官网数据模型搭建工具
  • 微信朋友圈网站广告怎么做做网站服务怎么赚钱
  • 沈阳网站建设公司的公司海南网上房地产
  • 鞋网站建设方案如何用dw做网站首页
  • ps做网站图片牙克石网站建设
  • 网站开发 html中国建设门户网站
  • 山西建筑劳务网站网站开发 在线支付
  • 免费快速网站动画设计属于什么专业类别
  • 易网 网站建设自建网站避免侵权
  • 安徽省建设厅证书查询官方网站wordpress更换域名后显示空白
  • 云南火电建设公司网站网站绿标怎么做
  • 上海市建设合同信息表网站做诱导网站
  • 做蛋糕网站的 实训报告图wordpress ip地址修改
  • 成都中小企业申请网站郑州百姓网征婚交友
  • 网站构建是什么低内存vps搭建WordPress
  • 临沂国际外贸网站建设.vip网站 被百度收录
  • 惠州自适应网站建设外包接单网
  • 网站做微信支付网站开发团队人员构成
  • 南昌网站开发制作公司纪检监察网站建设的意义
  • 论坛网站需要多大的空间手机端的网站怎么做的
  • 网站建设需要注意什么 知乎湛江市seo网站设计报价