Немного неясен вопрос. Но так как вы написали, да, можно. В процессе компиляции компилятор определит нужный тип, который возвращает ваш класс и подставит его вместо "auto". Если вы обращаетесь к неверным полям, несвойственным этому типу, компилятор вам это скажет во время компиляции.
Но все же приведенный вами пример - не интроспекция. Интроспекция в С++ достигается посредством RTTI. У вас в примере тип объекта известен во время компиляции.