c++ 指南-函数

函数

函数是执行特定任务的代码块,可以带参数,也可以返回值。

函数的定义和声明

函数声明

告诉编译器函数的名称、返回类型和参数类型,但不需要提供函数体。

cpp 复制代码
return_type function_name(parameter_type1 param1, parameter_type2 param2, ...);

函数定义

提供函数的实现。

cpp 复制代码
return_type function_name(parameter_type1 param1, parameter_type2 param2, ...) {
    // 函数体
}

参数和返回类型

参数

函数可以接收参数,这些参数在函数调用时传递给函数。

cpp 复制代码
void printNumber(int number) {
    std::cout << number;
}

返回类型

函数可以指定返回类型,表示函数执行完成后返回的数据类型。

cpp 复制代码
int add(int a, int b) {
    return a + b;
}

作用域和生命周期

局部变量

在函数内部声明的变量具有局部作用域,它们只在该函数内部可见。

cpp 复制代码
void exampleFunction() {
    int localVar = 10; // 只在exampleFunction内可见
}

全局变量

在所有函数之外声明的变量具有全局作用域,它们可以被所有函数访问。

cpp 复制代码
int globalVar = 20; // 全局作用域

void exampleFunction() {
    std::cout << globalVar; // 可以访问全局变量
}

函数的生命周期

函数的生命周期从它被调用开始,到它执行完毕并返回结果结束。

cpp 复制代码
void exampleFunction() {
    // 函数开始执行
    // ...
    // 函数执行完毕
}

理解函数的作用域和生命周期对于编写清晰、可维护的代码非常重要。函数应该尽量保持简洁和专注,只做它们需要做的事情。

相关推荐
菜宾10 分钟前
java-分布式面试题(事务+锁+消息队列+zookeeper+dubbo+nginx+es)
java·开发语言·分布式
Remember_99312 分钟前
【LeetCode精选算法】位运算专题一
java·开发语言·数据结构·leetcode·哈希算法
点云SLAM15 分钟前
C++内存泄漏检测之编译期 /运行时工具(ASan/Valgrind)
开发语言·c++·内存管理·错误排查·内存泄漏检测工具·valgrind工具·asan工具
leaves falling19 分钟前
c语言-编译和链接
c语言·开发语言
kk57919 分钟前
【MATLAB R2018a】路径文件pathdef.m为只读文件无法保存到matlab启动文件夹的问题
开发语言·matlab
黎雁·泠崖20 分钟前
Java静态变量底层:内存图解析+避坑指南
java·开发语言
布局呆星22 分钟前
魔术方法与魔术变量
开发语言·python
Gary董23 分钟前
java死锁
java·开发语言
陳103026 分钟前
C++:多态
开发语言·c++
m0_4972141540 分钟前
qt实现打印机功能
开发语言·qt