commit 2025-09-07 12:20 edit a bit ZCppMain/ZMainHead.H
This commit is contained in:
@ -1237,6 +1237,70 @@ namespace ZNsMain
|
||||
|
||||
int VariMy=0; ZtStTuple<int&> myt1 = ZftMakeTuple(ZftMCP(VariMy));
|
||||
|
||||
■ std::tuple<> 용례-1 -- 2025-09-07 12:08
|
||||
|
||||
#include <tuple>
|
||||
#include <iostream>
|
||||
|
||||
int main() {
|
||||
int nownum=42;
|
||||
|
||||
// Creating a tuple
|
||||
std::tuple<int&, std::string, double> myTuple(nownum, "Hello", 3.14);
|
||||
|
||||
// Accessing elements
|
||||
std::cout << std::get<0>(myTuple) << "\n"; // Outputs: 42
|
||||
std::cout << std::get<1>(myTuple) << "\n"; // Outputs: Hello
|
||||
std::cout << std::get<2>(myTuple) << "\n"; // Outputs: 3.14
|
||||
|
||||
// Modifying elements
|
||||
std::get<1>(myTuple) = "World";
|
||||
std::cout << std::get<1>(myTuple) << "\n"; // Outputs: World
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
■ std::tuple<> 용례-2 -- 2025-09-07 12:09
|
||||
|
||||
#include <tuple>
|
||||
#include <iostream>
|
||||
|
||||
std::tuple<int, double, std::string> getValues() {
|
||||
return {42, 3.14, "Hello"};
|
||||
}
|
||||
|
||||
int main() {
|
||||
auto [x, y, z] = getValues(); // Structured binding (C++17)
|
||||
std::cout << x << ", " << y << ", " << z << "\n"; // Outputs: 42, 3.14, Hello
|
||||
return 0;
|
||||
}
|
||||
|
||||
■ std::tuple<> 용례-3 -- 2025-09-07 12:11
|
||||
|
||||
#include <iostream>
|
||||
#include <tuple>
|
||||
#include <string>
|
||||
|
||||
int main() {
|
||||
// 기본 생성 및 값 할당
|
||||
std::tuple<std::string, int, double> tpl;
|
||||
std::get<0>(tpl) = "Example";
|
||||
std::get<1>(tpl) = 42 ;
|
||||
std::get<2>(tpl) = 3.14 ;
|
||||
|
||||
// make_tuple을 사용한 초기화
|
||||
auto tpl2 = std::make_tuple("Hello", 100, 1.23);
|
||||
|
||||
// 구조적 바인딩 (C++17 이상)
|
||||
auto [str, num, val] = tpl2;
|
||||
|
||||
std::cout << "Tuple 1: " << std::get<0>(tpl) << ", " << std::get<1>(tpl) << ", " << std::get<2>(tpl) << '\n';
|
||||
std::cout << "Tuple 2: " << str << ", " << num << ", " << val << '\n';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////*/
|
||||
|
||||
template< typename Type1 =void, typename Type2 =void,
|
||||
|
Reference in New Issue
Block a user