Имя пользователя:
Пароль:
 

Название темы: С++ | конструктор и operator[]
Показать сообщение отдельно

Аватара для Savant

Старожил


Сообщения: 300
Благодарности: 6

Профиль | Сайт | Отправить PM | Цитировать


Skrip
Цитата:
А каким образом компилятор догадался, что в функции operator[](int i) переменная "i"...
Тяжелый случай... Теория: с точки зрения компилятора, перегружаемые операторы есть самые обыкновенные функции. Поэтому в объявлении:
Код: Выделить весь код
int & vector::operator [] (int i) ;
int& - тип возвращаемого значения,
operator[] - имя функции,
int i - тип и количество аргументов.
Другое дело, что вызывается она немного по-другому... А именно так, как это определено в синтаксисе конкретного операнда.

Если у Вас в учебнике про это ни слова, смените учебник. Или прочтите эту статью (первое, что нашлось в гугле)

Отправлено: 13:58, 29-07-2005 | #6

Название темы: С++ | конструктор и operator[]