| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > перегруз оператора [] |
| Автор: DonPager 16.1.2008, 14:05 | ||||
есть класс:
вопрос в том правильно ли я перегружаю оператор [] потому как на такую запись:
выдаёт ошибку несоответствия типов |
| Автор: maxim1000 16.1.2008, 16:07 |
| а как объявлен AuthList? |
| Автор: DonPager 16.1.2008, 16:11 |
| как (TAuthTable *) |
| Автор: Fazil6 16.1.2008, 16:12 |
| <сори... переработал...> Добавлено через 2 минуты и 43 секунды а используешь как TAuthTable Добавлено через 6 минут и 34 секунды что за функция ? |
| Автор: DonPager 16.1.2008, 16:35 | ||
ну приведу пример реализации
но имхо описаловки достачно |
| Автор: DonPager 16.1.2008, 16:55 | ||
| вобщем х. с ним с оператором ... сделал так
и всё ништяк |
| Автор: ama_kid 16.1.2008, 17:18 | ||
ну тебе же Fazil6 вроде правильно указал путь: надо было просто написать типо такого:
|
| Автор: DonPager 17.1.2008, 11:01 | ||
[QUOTE=
вобщем мне то хотелось писать именно AuthList[i], но так и не догнал как надо было описать перегрузку, чтобы так написать |
| Автор: ama_kid 17.1.2008, 11:18 | ||
Тогда надо было его и объявлять как "объект", а не "ссылка на объект", т.е.
|
| Автор: DonPager 17.1.2008, 12:03 |
| ama_kid, Вобщем я так понял перегрузку для указателя сделать нельзя ? |
| Автор: ama_kid 17.1.2008, 12:14 |
| вообще-то перегрузка оператора делается для типа. Переменную типа ты можешь объявить объектом, либо указателем на объект и в зависимости от того как ты объявил - соответствующим образом обращаться к выделенному участку памяти - либо по имени (в случае объекта), либо разыменовыванием указателя... тут вроде как даже сам факт наличия перегрузки оператора ни при чем... |