Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Перегрузка оператора [] |
Автор: cerf_machine 7.8.2007, 15:11 | ||||||
Здравствуйте!
Перегружает оператор [] в том смысле, что можно использовать
А реально ли перегрузить его таким образом, чтобы использовать аля-ПХП:
Чтобы например реализовать добавление очередного элемента в массив? Благодарю. |
Автор: Ln78 7.8.2007, 15:43 | ||
cerf_machine, а для тебя принципиально, чтобы в скобках ничего не стояло? Если не сильно, можно использовать обычный
только анализировать, если значение индекса, например, равно -1 (или просто меньше нуля), то выделять при необходимости память (зависит от реализации операций управления памятью) или считать выделенной уже зарезервированную. Добавлено @ 15:44 Хотя это, конечно, на любителя. ИМХО, понятнее и красивее для этого использовать имя push_back |
Автор: Ln78 7.8.2007, 16:01 | ||
Опять же на любителя, если хочется со скобками, а писать индекс не хочется, можно использовать другие скобки
|
Автор: cerf_machine 7.8.2007, 16:03 |
Хм... Отвечу вопросом. Стал бы я спрашивать, как делается что-либо, если мне вообще по барабану до этого? Естественно хотелось бы поиметь пустой "[]". Так то мне ничто не мешает использовать и без того существующий метод Insert(). |
Автор: Daevaorn 7.8.2007, 16:06 |
нельзя. и смысла мало. функциональной сути никокой это не несет. только услада для глаз и то спорная. |
Автор: cerf_machine 7.8.2007, 16:07 |
2 Ln78, спасибо, перегружать круглые скобки точно не стоит![]() |
Автор: Ln78 8.8.2007, 06:34 |
Отвечаю на вопрос. Я предполагал, что спрашивающий, по крайней мере, именно ту конструкцию попытался оттранслировать и прочитал соответствующие диагностические сообщения компилятора. И только после этого задал вопрос, можно ли сделать нечто подобное. Обычно так и происходит. |
Автор: cerf_machine 8.8.2007, 10:03 |
2Ln78, Конечно я попытался это сделать всевозможными ухищрениями, на что компилер говорил "нет" (точных его слов уже не припомню)... |