回答編集履歴
2
appendix
answer
CHANGED
@@ -24,6 +24,6 @@
|
|
24
24
|
Func({.b = 200});
|
25
25
|
Func({.a = 100, .c = 300});
|
26
26
|
}
|
27
|
+
```
|
27
28
|
|
28
|
-
|
29
|
-
|
29
|
+
C++17以前であれば、[Boost.Parameterライブラリ](https://www.boost.org/doc/libs/1_75_0/libs/parameter/doc/html/index.html)という選択肢もあります。
|
1
update
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
C++20で導入された [指示付き初期化構文](https://cpprefjp.github.io/lang/cpp20/designated_initialization.html) を利用し、デフォルト値ありのキーワード引数風の記述を行うことはできます。この実装では引数型`Tn`を問いません。
|
1
|
+
C++20で導入された [指示付き初期化構文](https://cpprefjp.github.io/lang/cpp20/designated_initialization.html) を利用し、デフォルト値ありのキーワード引数風の記述を行うことはできます。この実装では引数型`Tn`を問いません。一方、関数呼び出し時の名前指定順は宣言順(`a`→`b`→`c`)に並べる必要があります。
|
2
2
|
|
3
3
|
Demo: [https://wandbox.org/permlink/dePzSyhX7H2inWgK](https://wandbox.org/permlink/dePzSyhX7H2inWgK)
|
4
4
|
```cpp
|