博客
关于我
c++基础-c++对c的扩充:const定义常变量,有默认参数的函数
阅读量:375 次
发布时间:2019-03-05

本文共 922 字,大约阅读时间需要 3 分钟。

1. 用const定义常变量

在C++中,const是一个强类型修饰符,用于定义常变量。与C语言中的#define不同,const在编译时进行常量值替换,避免了符号常量的错误风险。

常规做法是在全局范围内或静态局部范围内定义const变量,这样可以提高代码的安全性和可维护性。例如:

```cppconst double PI = 3.1415926; // 定义常量πconst int MAX_VALUE = 100; // 定义常量最大值```

需要注意的是,const变量不能在定义时给出初始值,否则会导致编译错误。

2. 带有默认参数的函数

在C++中,函数可以带有默认参数,这种方式能够提高函数的灵活性。默认参数的使用需要注意以下几点:

• 在调用函数时,必须在调用前明确传递所有非默认参数的值。例如:

```cppvoid func(int a, int b = 1, int c = 2) { // 函数实现}// 调用方式:func(5) 或 func(5, 3, 10)```

• 一个函数不能同时带有默认参数和被多个函数重载。因为如果一个函数少传一个参数,会导致编译时歧义的问题。

• 在函数声明时给出默认参数,在函数定义时最好不要再重复指定,默认参数的定义应在声明处。

• 某些编译器可能会对重复指定默认参数的行为给予警告或错误:

```cpp// 这会导致编译错误void func(int a = 1, int b = 1) { // 函数实现}```

示例:实现求最大值的函数

以下是一个带有默认参数的最大值求函数:

```cpp#include
using namespace std;

const double PI = 3.1415926;

double max(double a, double b, double c = PI * 10) {if (a > b) {return a;} else if (b > c) {return b;} else {return c;}}

int main() {cout << max(20, 25) << endl;return 0;}

程序输出:31.415

转载地址:http://lpiwz.baihongyu.com/

你可能感兴趣的文章
C++学习记录 五、C++提高编程(2)
查看>>
面试问道nginx优化怎么做的
查看>>
自学linux毕业shell面试题
查看>>
4 Java 访问控制符号的范围
查看>>
第9章 - 有没有替代原因(检验证据)
查看>>
VUE3(八)setup与ref函数
查看>>
Vue之Element标签页保留用户操作缓存。
查看>>
智能合约开发实践(1)
查看>>
2. Spring Boot学习——Yaml等配置文件教程
查看>>
MATLAB——操作矩阵的常用函数
查看>>
CMake自学记录,看完保证你知道CMake怎么玩!!!
查看>>
Eigen库中vector.transpose()函数什么意思
查看>>
ORB-SLAM2:LocalMapping线程学习随笔【李哈哈:看看总有收获篇】
查看>>
ORB-SLAM2:LoopClosing线程学习随笔【李哈哈:看看总有收获篇】
查看>>
牛客练习赛56 D 小翔和泰拉瑞亚(线段树)
查看>>
Codeforces Round #614 (Div. 2) B - JOE is on TV! (简单贪心)
查看>>
Codeforces Round #553 (Div. 2) B. Dima and a Bad XOR(异或+思维)
查看>>
Codeforces Round #305 (Div. 1) B. Mike and Feet(单调栈)
查看>>
hdu6434 Problem I. Count(数论)(好题)
查看>>
NC15553 数学考试(线性DP)
查看>>