aboutsummaryrefslogtreecommitdiffstats
path: root/tutorial/chapter-10-3
diff options
context:
space:
mode:
Diffstat (limited to 'tutorial/chapter-10-3')
-rw-r--r--tutorial/chapter-10-3/main.cpp13
-rw-r--r--tutorial/chapter-10-3/myproject.qbs28
2 files changed, 41 insertions, 0 deletions
diff --git a/tutorial/chapter-10-3/main.cpp b/tutorial/chapter-10-3/main.cpp
new file mode 100644
index 000000000..88594765d
--- /dev/null
+++ b/tutorial/chapter-10-3/main.cpp
@@ -0,0 +1,13 @@
+//![0]
+// main.cpp
+
+import std;
+
+int main()
+{
+ std::vector<int> numbers = {1, 2, 3, 4, 5};
+ std::ranges::for_each(numbers, [](int n) { std::cout << n << ' '; });
+ std::cout << std::endl;
+ return 0;
+}
+//![0]
diff --git a/tutorial/chapter-10-3/myproject.qbs b/tutorial/chapter-10-3/myproject.qbs
new file mode 100644
index 000000000..f22e504e1
--- /dev/null
+++ b/tutorial/chapter-10-3/myproject.qbs
@@ -0,0 +1,28 @@
+//![1]
+// myproject.qbs
+CppApplication {
+ condition: {
+ if (qbs.toolchainType === "msvc"
+ || ((qbs.toolchainType === "gcc")
+ && cpp.compilerVersionMajor >= 15)
+ || (qbs.toolchainType === "clang" && cpp.compilerVersionMajor >= 18)) {
+ return true;
+ }
+ console.info("Unsupported toolchainType " + qbs.toolchainType);
+ return false;
+ }
+ consoleApplication: true
+ install: true
+ files: ["main.cpp" ]
+ //![0]
+ cpp.cxxLanguageVersion: "c++23"
+ cpp.forceUseCxxModules: true
+ cpp.forceUseImportStd: true
+ //![0]
+ Properties {
+ condition: qbs.toolchainType === "clang"
+ cpp.cxxFlags: ["-Wno-reserved-module-identifier"]
+ cpp.cxxStandardLibrary: "libc++"
+ }
+}
+//![1]