// C++17 示例代码:结构化绑定和初始化列表
#include <iostream>
#include <tuple>
#include <utility>
int main() {
// 结构化绑定 (Structured Bindings)
std::tuple<int, double, char> myTuple(42, 3.14, 'A');
auto [num, pi, letter] = myTuple;
std::cout << "Number: " << num << ", Pi: " << pi << ", Letter: " << letter << std::endl;
// 初始化列表作为函数参数 (Initializer List as Function Parameter)
void print(const std::initializer_list<int>& list) {
for (auto& elem : list) {
std::cout << elem << " ";
}
std::cout << std::endl;
}
print({1, 2, 3, 4, 5});
return 0;
}
结构化绑定 (Structured Bindings):
std::tuple
或其他聚合类型(如 std::pair
)的元素解包到多个变量中。std::tuple
,并使用结构化绑定将其解包到 num
, pi
, 和 letter
中。初始化列表作为函数参数:
std::initializer_list
),但 C++17 对其进行了改进,使得它可以更灵活地用作函数参数。std::initializer_list<int>
的函数 print
,并在主函数中调用它,传递一个初始化列表 {1, 2, 3, 4, 5}
。上一篇:c++析构函数
下一篇:c++动态数组
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站