decltype
auf einen Ausdruck angewendet, der kein id-Ausdruck ist, gibt Ihnen eine Referenz, also ist decltype(*this)
bereits A&
, und Sie können const
nicht erneut machen. Wenn Sie wirklich decltype
verwenden wollten, könnten Sie etwas wie folgt machen:
Oder auch das:
%Vor% Natürlich ist es viel einfacher, einfach static_cast<A const &>(*this)
zu sagen.
Tags und Links c++ c++11 compiler-errors overloading decltype