|
samedi 07 août 2021 à 20h17
|
Mais alors pourquoi gcc n'arrive pas a appeler le premier overload dans un contexte avec template ?
|
|
samedi 07 août 2021 à 17h17
|
Selon http://eel.is/c++draft/over.match.best, je pense que l'appel `f` sans specifier d'arguments (de fonctions ou de template) devrait lever une erreur de compilation pour ambiguïté, puisque le prem…
|
|
vendredi 06 août 2021 à 16h18
|
[[information]]
| Le code ne fonctionne que sur gcc
```cpp
template <auto = []{}>
consteval auto f() { return false; }
template <typename ...Args>
consteval auto f(Args &&...) { return true; …
|
|
mercredi 04 août 2021 à 14h41
|
Du coup voici ma theorie.
Pour ce code
```cpp
template <typename T, std::size_t N>
struct member {
friend constexpr auto member_type(member<T, N>);
};
template <typename T, std::size_t N…
|
|
mercredi 04 août 2021 à 14h07
|
Je crois que `arg_t` est converti vers `TArgs`
```cpp
template <typename T, typename... TArgs>
constexpr auto is_brace_constructible(int) -> decltype(T{TArgs{}...}, std::true_type{});
```
lorsqu…
|
|
mardi 03 août 2021 à 16h49
|
Aussi, quand tu m'auras répondu. Je serais très intéressé de savoir s'il existe une version supportant l’héritage et si oui pourrais tu me la partager ?
|
|
mardi 03 août 2021 à 16h22
|
Je comprends que l'instantiation de `arg_t` pour un type `T` et un index `Is` dans
```cpp
template <typename T, auto... Is>
constexpr auto is_constructible(std::index_sequence<Is...>) -> decltype(…
|
|
mardi 03 août 2021 à 14h36
|
Finalement je pense avoir compris.
|
|
mardi 03 août 2021 à 12h17
|
Pourrait-on m'expliquer comment ce code fonctionne ? Plus particulierment le fonctionnement de `arg_t` et de `num_constructor_args`.
```cpp
template <typename...> struct list_t {};
namespace detai…
|
|
lundi 02 août 2021 à 15h28
|
Ah oui en fait c'est assez bete de ma part parce que c'est le meme raisonnement que `UpdateCurrentState`, dans le sens ou j'ai besoin de l'instancier une nouvelle fois pour qu'elle evalue une nouvell…
|
|
dimanche 01 août 2021 à 23h50
|
Bonjour, j'ai recemment trouve quelque chose d'assez curieux avec les injections friend. Prenons ce code :
```cpp
template <auto InstanceIdentifier, auto x>
struct Flag {
friend consteval aut…
|