C++ 变量与函数的深入剖析
1. 局部变量
1.1 定义与特性
变量可以在 main()
函数或其他函数内部定义,这种在函数体内定义的变量被称为局部变量,也叫自动变量,因为它们具有自动存储类。例如:
void somefunc()
{
int somevar; // variables defined within
float othervar; // the function body
// other statements
}
1.2 存储类
局部变量在定义它的函数被调用时才会创建。例如,在上述代码中, somevar
和 othervar
在 somefunc()
函数被调用前并不存在,没有内存空间存储它们的值。当控制转移到 somefunc()
时,变量被创建并分配内存空间;函数返回后,变量被销毁,其值丢失。变量的创建和销毁之间的时间段称为其生命周期,局部变量的生命周期与定义它的函数执行时间一致。限制变量生命周期的目的是节省内存空间。
1.3 作用域
变量的作用域(也叫可见性)描述了程序中可以访问该变量的位置。在函数内定义的变量只能在该函数内部可见和访问。例如:
void somefunc()
{
int somevar;