C++ auto
auto 关键字
auto 关键字会根据您赋给变量的值自动检测变量的类型。
它可以帮助您编写更简洁的代码并避免重复类型,特别是对于长或复杂的类型。
例如:与其写 int x = 5;,您可以写:
实例
auto x = 5; // x 自动被视为 int 类型
从 C++11 开始,auto 成为一种强大的方式,让编译器根据您赋的值来确定类型。
不同类型的示例
下面是一个示例,展示了如何根据您赋的值,使用 auto 创建不同类型的变量:
实例
// 创建 auto 变量
auto myNum = 5; // int 类型
auto myFloatNum = 5.99f; // float 类型
auto myDoubleNum = 9.98; // double 类型
auto myLetter = 'D'; // char 类型
auto myBoolean = true; // bool 类型
auto myString = string("Hello"); // std::string 类型
重要说明
auto 仅在您同时赋值时有效(不能声明 auto x; 而不赋值)。
一旦类型被选定,它将保持不变。请参阅下面的示例:
auto x = 5; // x 现在是 int 类型 x = 10; // 正确 - 仍然是 int 类型 x = 9.99; // 错误 - 不能将 double 赋值给 int
注意:在本教程中,当类型简单且易于查看时,我们通常使用 int、double 和其他基本类型。
但对于更复杂的类型 - 如 迭代器 和 lambda 表达式(您将在后面的章节中了解更多),我们使用 auto 来保持代码更简洁、更易于理解。