Skip to content

Commit b99f04e

Browse files
author
XuhuaHuang
committed
Early template for example
1 parent 454e1bb commit b99f04e

2 files changed

Lines changed: 31 additions & 0 deletions

File tree

Template/CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ project("template")
55
set(CMAKE_CXX_STANDARD 23)
66
set(CMAKE_CXX_STANDARD_REQUIRED ON)
77

8+
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
9+
810
add_executable(template_cls
911
"ClassTemplate/main.cpp"
1012
"ClassTemplate/Stack.hpp"
@@ -18,3 +20,9 @@ add_executable(template_fn
1820
add_executable(template_notes
1921
"template_notes.cpp"
2022
)
23+
24+
add_executable(template_for
25+
"template_for.cpp"
26+
)
27+
28+
target_compile_options(template_for PRIVATE -std=c++26)

Template/template_for.cpp

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#include <tuple>
2+
3+
std::tuple<int, char, double> get_tuple();
4+
5+
struct Data {
6+
int a;
7+
char b;
8+
double c;
9+
};
10+
11+
Data get_data();
12+
13+
void use(double);
14+
void use(char);
15+
void use(int);
16+
17+
int main() {
18+
template for (const auto& element : get_tuple()) {
19+
// Do something with element
20+
use(element);
21+
}
22+
return 0;
23+
}

0 commit comments

Comments
 (0)