C++核心编程之占位参数和默认参数

 更新时间:2022年03月21日 11:52:58   作者:高云城  
这篇文章主要介绍了C++核心编程之占位参数和默认参数,c++中函数的形参列表中的形参是可以有默认值的,函数的形参列表里可以有占位参数,用来占位,调用函数时必须填补位置。下面更多相关内容的详细介绍,需要的小伙伴可以参考一下

1,默认参数

在c++中,函数的形参列表中的形参是可以有默认值的。

  • 语法: 返回值类型 函数名 (参数 = 默认值)
  • 注意事项:1从左到右设置默认参数。2不能重定义默认参数

代码示例:

int test(int a, int b=10, int c=10)
{
  return a + b + c;
}

​b=10和c=10就是函数的默认参数,当不给b和c赋值时,就用默认的参数

使用

​使用默认参数时候有两点要注意​:

(1)设置默认参数的时候,必须从左到右都设置。

既从左到右的第一个参数设置默认值了,其后面都要设置默认参数。可以都设也可以都不设

代码示例:

int test02(int a,int b,int c=10,int d=20,int f=30)
{
  return a + b + c + d + f;
}

(2)不能重定义默认参数。既函数的定义和函数的实现时,只能选择其一设置默认参

代码示例:

int test03(int a = 10, int b = 10);

int test03(int a,int b)
{
  return a + b;
}

int main()
{
  cout << test(10) << endl;//输出结果为30

  cout << test(10,30,30) << endl;//自动跳过默认的10,用的是30的值,输出结果为70
  
  system("pause");

}

2,函数占位参数

c++中函数的形参列表里可以有占位参数,用来占位,调用函数时必须填补位置

语法: 返回值类型 函数名 (数据类型) { }

void  test  ( int c int )
 {}

上方参数列表中 第二个 int 既是占位参数 

void func(int a,int)
{
  cout << "this is a function" << endl;
}

int main()
{
  func(10, 56); //若只传入10不传入56,那么func函数将不会被调用
  system("pause");
}

报错:

触发的情况:

占位参数的:​在调用的时候必须传入该类型的参数函数才能被调用​;

优点:可以用作函数的触发

到此这篇关于C++核心编程之占位参数和默认参数的文章就介绍到这了,更多相关C++占位参数和默认参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C语言结构及队列实现示例详解

    C语言结构及队列实现示例详解

    这篇文章主要为大家介绍了C语言实现队列示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • C语言中的文件操作详解

    C语言中的文件操作详解

    这篇文章主要介绍了C语言中的文件操作详解,使用文件可以将数据直接存放到电脑的硬盘上,做到了数据的持久化
    2022-07-07
  • C++设计模式之Static Factory模式详解

    C++设计模式之Static Factory模式详解

    这篇文章主要为大家详细介绍了C++设计模式之Static Factory模式的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • C语言循环链表实现贪吃蛇游戏

    C语言循环链表实现贪吃蛇游戏

    这篇文章主要为大家详细介绍了C语言循环链表实现贪吃蛇,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • 解决Devc++运行窗口中文乱码的实现步骤

    解决Devc++运行窗口中文乱码的实现步骤

    本文主要介绍了如何解决Devc++运行窗口中文乱码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 一文详解如何在VS Code上搭建C/C++开发环境

    一文详解如何在VS Code上搭建C/C++开发环境

    VSCode是由微软开发的一款免费、开源、跨平台的文本编辑器,它具有许多强大的功能,这篇文章主要给大家介绍了关于如何在VS Code上搭建C/C++开发环境的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • 详解C语言中的字符串拼接(堆与栈)

    详解C语言中的字符串拼接(堆与栈)

    这篇文章主要介绍了C语言中字符串拼接(堆与栈)的相关资料,文中通过一段示例代码详细介绍了关于C语言中的字符串拼接问题,有需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • 使用c++实现异或加密的代码示例

    使用c++实现异或加密的代码示例

    这篇文章主要为大家介绍了c++实现异或加密的代码示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04
  • C语言线性表全面梳理操作方法

    C语言线性表全面梳理操作方法

    线性表,数据结构中最简单的一种存储结构,专门用于存储逻辑关系为"一对一"的数据。线性表是基于数据在实际物理空间中的存储状态,又可细分为顺序表(顺序存储结构)和链表
    2022-04-04
  • c++基础学习之如何区分引用和指针

    c++基础学习之如何区分引用和指针

    C语言中只有指针,C++加入了引用,能够起到跟指针类似的作用,下面这篇文章主要给大家介绍了关于c++基础学习之区分引用和指针的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-08-08

最新评论