File tree Expand file tree Collapse file tree 1 file changed +62
-0
lines changed Expand file tree Collapse file tree 1 file changed +62
-0
lines changed Original file line number Diff line number Diff line change @@ -57,9 +57,71 @@ namespace std::linalg {
5757
5858
5959## 例
60+ **[注意] 処理系にあるコンパイラで確認していないため、間違っているかもしれません。**
61+
62+ ```cpp example
63+ #include <cmath>
64+ #include <execution>
65+ #include <iostream>
66+ #include <linalg>
67+ #include <mdspan>
68+ #include <vector>
69+
70+
71+ template <class Vector>
72+ void print(Vector v) {
73+ for (int i = 0; i < v.extent(0) - 1; ++i) {
74+ std::cout << v[i] << ", ";
75+ }
76+ std::cout << v[v.extent(0) - 1] << std::endl;
77+ }
78+
79+
80+ int main()
81+ {
82+ constexpr size_t N = 3;
83+
84+ std::vector<double> a_vec({1, 2, 3});
85+ std::mdspan a(a_vec.data(), N);
86+
87+ std::vector<double> b_vec({4, 5, 6});
88+ std::mdspan b(b_vec.data(), N);
89+
90+ // (1)
91+ std::linalg::swap_elements(a, b);
92+ std::cout << "(1)\n";
93+ std::cout << "a\n";
94+ print(a);
95+ std::cout << "b\n";
96+ print(b);
97+
98+ // (2)
99+ std::linalg::swap_elements(std::execution::par, a, b);
100+ std::cout << "(2)\n";
101+ std::cout << "a\n";
102+ print(a);
103+ std::cout << "b\n";
104+ print(b);
105+
106+ return 0;
107+ }
108+ ```
109+ * std::linalg::copy[ color ff0000]
60110
61111
62112### 出力
113+ ```
114+ (1)
115+ a
116+ 4, 5, 6
117+ b
118+ 1, 2, 3
119+ (2)
120+ a
121+ 1, 2, 3
122+ b
123+ 4, 5, 6
124+ ```
63125
64126
65127## バージョン
You can’t perform that action at this time.
0 commit comments