أنا لا أفهم تمامًا الحاجة ، بخلاف اللعب مع بناء الجملة. هذا بالضبط ماذا auto
تم تصميمه ل ، و auto
مدعوم من نفس المعيار الذي تمت إضافته decltype
...
على أي حال ، تحتاج إلى محاكاة استدعاء الوظيفة:
decltype(std::declval<A>()[0]) b = 0; // equivalent to `int b = 0;`