IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> Перегрузка операций в Turbo Pascal'е, Почти конкурс
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


Вопрос:

Существует ли перегрузка операторов в Turbo Pascal'е?
Если нет, то объяснить почему.
Если да, то привести примеры и назвать самую перегруженную операцию.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
Существует ли перегрузка операторов в Turbo Pascal'е?
Нет, в Турбо Паскале - не существует... Почему? Потому что такая возможность не была заложена авторами языка...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


volvo - ответ неверный.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Да? Тогда перегрузи мне операцию сложения двух заданных мной структур? Сделаешь? На Турбо Паскале? А я посмотрю... И заодно приведи определение, что ТЫ подразумеваешь под перегрузкой операций...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


Люди, не стесняйтесь, напишите всё, что думаете или знаёте по данному вопросу.
Не одному же volvo всё время отвечать. smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






dry.gif На твои вопросы я больше отвечать не собираюсь...

Кому-то еще не нравится что я отвечаю на вопросы?

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


Цитата(Neznaika @ 8.10.2007 15:05) *

volvo - ответ неверный.

Хммм......
Читаем википедию (особое внимание табличке внизу статьи... хотя она и не совсем корректна, пожалуй... Free Pascal в ней не упоминается, поэтому совершенно непонятно, что они подразумевают под паскалем).

Цитата
назвать самую перегруженную операцию.

Это вообще как? У которой самое большое количество вариантов перегрузки? Или что?

И вообще, о чем речь???
Допустим, в паскале есть
integer+integer - сумма
string+string - конкатинация
ты это понимаешь под перегрузкой?

Сообщение отредактировано: мисс_граффити -


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


мисс_граффити - правильно.
Правильно - операция + - сложение чисел, конкатенация(или опять же сложение) строк,
объединение множеств - эта операция перегружена.



Добавлено через 17 мин.
Сегодня в газете прочитал, что меняется формат высшего образования. Стандартом будет - неполное высшее(бакалавриат - 4 года). Потом, чтобы добраться до аспирантуры, нужно поступить в магистратуру(2 года).
Вот будут люди 4 года по 3 месяца "изучать" каждый предмет, а потом экзаменационная комиссия задаст им
вопрос наподобие этого и легко отсеит сказавших: "Нет, перегрузка не существует."

Не знаю, что подумал volvo, но я его ответ не засчитал. У него ответ с объяснением, но этот ответ не подходит.

Вопрос был о существовании.
Если его задать по-другому, а именно так:
Существует ли встроенная перегрузка операций и может ли программист сам перегружать операции,
то ответами разумеется будут - существует и не может.

Мне кажется - это очень важный вопрос. Если знать об этой самой перегрузке операций, то например не будет
ошибок например при выборе между div и / в Паскале или не появится вопрос при целочисленном или вещественном делении в C.

-------------------------------------------------------------------------------------------------------------------------------------
Кстати, этих перегруженных операций довольно много, а некоторые совсем "не видны невооружённым взгядом".

Сообщение отредактировано: Neznaika -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


вопрос некорректный.
одно дело - "существуют ли перегруженные операторы", другое - "существует ли перегрузка".
по аналогии - "существуют ли процедуры с переменным числом параметров" и "существует ли написание процедур с переменным числом параметров".


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


Существует ли перегрузка операторов - следует читать существует ли вообще.
Я выше не зря написал про экзаменационную комиссию.

В литературе всегда упоминается перегрузка операторов, как термин, но речь при этом идёт(опять же всегда) лишь о перегруженом символе операции. Что такое операция - это конструкция вида:
операнд_1 символ_операции операнд_2
при этом один из операндов может отсутствовать. Один и тот же символ операции используется в разных операциях.

Здесь просто слово оператор используется традиционно некорректно.

P.S.
А про процедуры тожно так и ответить:
существуют Read и Write, самим создать такие процедуры нельзя.

И естественные языки сильно перегружены. Это и плохо и хорошо.

Сообщение отредактировано: Neznaika -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


вот такое определение:
Цитата
Что такое операция - это конструкция вида:
операнд_1 символ_операции операнд_2

уж точно ни одна комиссия не пропустит.
яркий пример - в ЛИСПе совсем другая форма записи.
Код
+ 5 3

это что, уже не операция?


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Пионер
**

Группа: Пользователи
Сообщений: 51
Пол: Мужской

Репутация: -  0  +


То ЛИСП, а это Паскаль. Можно ещё более абстрагироваться - операция это кортеж
<символ_операции, операнд_1, операнд_2>
Перегружается именно символ_операции.

-------------------------------------------------------------------------------------------------------------------------------------
Собственно для чего форум: обсудить и дать совет.
Нельзя же его считать только электронным справочником. Или считать, что знаешь всё,
а кто с этим не согласен, тот идиот.

Откуда например взялось понятие контекста?

Или например в ассемблере есть команды загрузки и сохранения, а для ASM86 мнемоника одна - MOV.

Есть сложные типы данных(массивы, записи), какие операции можно с ними проводить? Присваивание(здесь видна перегрузка :=).

AND-логический и AND-арифметический - это разные AND'ы, но что-то общее у них есть.

Что такое синтез и анализ и т.д. и т.п.

Сообщение отредактировано: Neznaika -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Гость






Цитата
Есть сложные типы данных(массивы, записи), какие операции можно с ними проводить? Присваивание(здесь видна перегрузка :=).
Ничего здесь не видно...

В следующий раз задавай вопросы корректно, если хочешь получать корректные ответы... Перегрузка операций - это механизм, позволяющий программисту переопределить определенную операцию для определенного типа данных... Вот в С++ (кстати, и в FPC тоже) я могу перегрузить операцию сложения для массивов, перегрузить оператор присваивания (т.е., сделать так, чтобы он вел себя НЕ ТАК как встроенный)... А то что ты написал - это базовая возможность языка, никакого отношения к перегрузке не имеющая...

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.03.2024 17:11
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name