#include <iostream>
#include <vector>
int main() {
// 使用auto自动推导变量类型
auto a = 10; // a是int类型
auto b = 3.14; // b是double类型
auto c = std::string("hello"); // c是std::string类型
// 在容器中使用auto简化迭代器声明
std::vector<int> vec = {1, 2, 3, 4, 5};
for (auto it = vec.begin(); it != vec.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
// 使用auto简化范围for循环中的元素类型声明
for (auto elem : vec) {
std::cout << elem << " ";
}
std::cout << std::endl;
// 使用auto和lambda表达式
auto lambda = [](int x, int y) -> int { return x + y; };
std::cout << "Sum: " << lambda(3, 4) << std::endl;
return 0;
}
auto
关键字可以让编译器根据初始化表达式自动推导变量的类型。例如,auto a = 10;
会将a
推导为int
类型。auto
可以简化迭代器的声明,如for (auto it = vec.begin(); it != vec.end(); ++it)
。auto
可以简化元素类型的声明,如for (auto elem : vec)
。auto
也可以用于定义lambda表达式,如auto lambda = [](int x, int y) -> int { return x + y; };
。通过这些示例,可以看到auto
关键字在C++中可以简化代码编写,提高代码的可读性和维护性。
上一篇:c++ 遍历vector
下一篇:c++ openmp
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站