c++ auto的用法
时间: 2023-08-27 22:22:48 浏览: 103
`auto` 是 C++11 引入的关键字,用于自动推断变量的类型。它可以根据变量的初始值自动推断出变量的类型,从而简化代码编写和维护的工作。
使用 `auto` 的语法如下:
```cpp
auto variable = value;
```
在这个语法中,`auto` 关键字告诉编译器根据 `value` 的类型推断出 `variable` 的类型,并将其初始化为相应的值。
下面是一些 `auto` 的使用示例:
```cpp
auto number = 42; // 推断为 int 类型
auto name = "Alice"; // 推断为 const char* 类型
auto result = calculate(); // 推断为函数 calculate() 的返回类型
std::vector<int> numbers;
// 使用 auto 遍历容器
for (auto it = numbers.begin(); it != numbers.end(); ++it) {
// ...
}
// 使用 auto 推断函数对象类型
auto add = [](int a, int b) { return a + b; };
int sum = add(1, 2); // sum 推断为 int 类型
// 声明函数返回类型为 auto
auto getNumber() {
return 42;
}
```
需要注意的是,`auto` 推断的类型是静态类型,即编译期确定的类型,而不是运行时确定的动态类型。因此,在使用 `auto` 时要确保表达式的类型可以被推断出来,否则会导致编译错误。
阅读全文