Je ne comprends pas très bien le besoin, à part jouer avec la syntaxe. C'est précisément ce auto
a été conçu pour, et auto
est pris en charge par la même norme qui a ajouté decltype
...
En tout cas, vous devez simuler l'appel de fonction:
decltype(std::declval<A>()[0]) b = 0; // equivalent to `int b = 0;`