Предстоящий компилятор Visual C ++ добавляет этот синтаксис для работы с объектами WinRT (которые, в свою очередь, являются следующим поколением COM, через что мы прошли сейчас: COM, DCOM, COM +, ActiveX, ...)
Эта строка почти эквивалентна:
com_ptr_t<Foo> foo = CreateInstance<Foo>();
Но есть и новая версия com_ptr_t
, использующая синтаксис Foo^
.