您的位置:首页 > 编程语言 > C语言/C++

C++关键字:auto

2007-11-16 13:17 323 查看
很少有程序员在声明时使用auto关键字,因为在块的范围内目标不是显式的声明就是隐式的声明为自动的存储类型。因此,下面2个声明是等效的:
{
auto int i; // 显式的声明为auto.
int j; // 隐式的声明为auto.
}

auto存储类型说明:
auto存储类型说明符声明了一个自动变量,即一个只在块运行时有效的变量。一个auto变量仅在声明它的块内是可见的。

auto变量的声明能包含初始化。因为有auto存储类型的变量并不自动的初始化,你应该在声明时显式的初始化它们,或在同一个块内赋给它们初始值。未初始化的auto变量的值是未定义的。(一个本地的auto或register存储类型的变量在每次

程序运行到它的范围时都会被初始化,如果初始值被给定的话)
一个内部的static变量(一个本地或块内的静态变量)能通过任何的外部的地址或静态的元素被初始化,但不能通过一个auto元素,因为auto元素的地址不是一个常数。

这个这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。这个关键字不怎么多写,因为所有的变量默认就是auto的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: