Re[2]: В чем дело?
От: rus blood Россия  
Дата: 30.05.04 16:08
Оценка:
A>Компилятор пытается применить к объекту класса Test оператор []. Но "своего" такого оператора у этого класса нету. Значит нужно попробовать привести объект класса к какому-либо другому типу так, чтобы можно стало применить оператор [].

A>Так как у класса определен оператор приведения к типу int, рассматривается конструкция


A>
A>(test.operator int())["test"];
A>


A>Она является вполне легальной. Неоднозначности тоже нет — вот и применяется такая конструкция.


... В итоге выражение транслируется в "test"[1], что дает 'е'.
Имею скафандр — готов путешествовать!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.