Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyИ в принципе их можно понять. Снобизм вообще понятная штука )) Не снобизм. Это последовательность эволюции. Никто не ставил задачи впихнуть всё фишки в квази-ассемблер для Юникса. "С" на тот момент и так был прорывом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 17:42 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovТолько потому, что компоновщику совершенно по барабану как именно компилятор задекорирует имя. Одно имя на две точки входа он (компоновщик) всё равно не умеет. Так я и говорю. Линкер тут вообще не причем. Если компилятор захочет он найдет как организовать перегрузку. Но он не хочет )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 18:02 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
mayton"С" на тот момент и так был прорывом. А я не про тот момент. Я про этот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 18:03 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
maytonУ меня при слове ЭВМ начинается когнитивный диссонанс и раскаты смеха. Еще-бы написали "табулятор". Или счётная "машинка". Честно скажу я нечитал этих замечательных людей. Но сам факт заимствования терминологии из середины 20-го века доставляет. Ну да бох с ними ничего там страшного нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 18:16 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskymayton"С" на тот момент и так был прорывом. А я не про тот момент. Я про этот. А ну ОК. А почему только "С" ? Давайте поставим общий вопрос. Перегрузка операторов в современных ЯП. Прошлое. Настоящее. Будущее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 18:55 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
mayton, Похоже на название топика в другом форуме )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 19:05 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
В программинге? Или в ПТ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 19:12 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
maytonВ программинге? Или в ПТ? Это вопрос к модератору ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 19:18 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
maytonА ну ОК. А почему только "С" ? Давайте поставим общий вопрос. Перегрузка операторов в современных ЯП. Прошлое. Настоящее. Будущее. может глобальнее поставить: зачем вообще нужна перегрузка операторов? Лично мне интересно. Побаловался с этой темой тыкаясь в С++, но как-то не заценил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 19:56 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Dima T, подними новый тред в С++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 20:14 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Dima TmaytonА ну ОК. А почему только "С" ? Давайте поставим общий вопрос. Перегрузка операторов в современных ЯП. Прошлое. Настоящее. Будущее. может глобальнее поставить: зачем вообще нужна перегрузка операторов? Лично мне интересно. Побаловался с этой темой тыкаясь в С++, но как-то не заценил. странно, по-моему так достаточно очевидно: -- для того, чтобы не думать очень долго над названием функции -- для того, чтобы иметь возможность реализовывать user defined data types , встроенные в языке, и передумать для них разные операции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2015, 20:17 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Изопропил, нашел :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 01:55 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
MasterZivDima Tпропущено... может глобальнее поставить: зачем вообще нужна перегрузка операторов? Лично мне интересно. Побаловался с этой темой тыкаясь в С++, но как-то не заценил. странно, по-моему так достаточно очевидно: -- для того, чтобы не думать очень долго над названием функции -- для того, чтобы иметь возможность реализовывать user defined data types , встроенные в языке, и передумать для них разные операции. Лично для меня, дело даже не в том чтобы подумать о названии функций, а в том, что на незачем создавать кучу функций с разными именами только из-за того, что у них разные параметры, поскольку смысловая нагрузка на функции сохраняется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 02:03 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
SashaMercuryЛично для меня, дело даже не в том чтобы подумать о названии функций, а в том, что на незачем создавать кучу функций с разными именами только из-за того, что у них разные параметры, поскольку смысловая нагрузка на функции сохраняетсяТы хочешь перегрузку функций в Си? Ну и запросто, объектное программирование никто не отменял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 02:36 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
White OwlSashaMercuryЛично для меня, дело даже не в том чтобы подумать о названии функций, а в том, что на незачем создавать кучу функций с разными именами только из-за того, что у них разные параметры, поскольку смысловая нагрузка на функции сохраняетсяТы хочешь перегрузку функций в Си? Ну и запросто, объектное программирование никто не отменял. Ниже код на С++, с использованием перегрузки функций Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. как вы предлагает сделать аналогичное на Си ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 02:57 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Лучше так, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 02:59 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Марк, а что не так в слове ЭВМ ? Или ВМ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 04:02 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
maytonДо кучи. Статья на тему http://tproger.ru/translations/art-of-structure-packing/ Однако, в этой работе есть ряд вопросов рассмотрен не полностью. 1. Применяется ли концевое заполнение в том случае, если после структуры располагается не элемент такого-же типа ? Вообще, концевое заполнение необходимо лишь в том случае, если объявляется массив структур 2. Смутили тривиальные предложения авторПрежде чем мы коснемся структур, следует упомянуть массивы скалярных величин. На платформе с выравниванием данных массивы char/short/int/long или указателей располагаются в памяти последовательно, без заполнения. 3. Тут возможно ошибка авторБитовые поля позволяют объявить переменные, занимающие меньшую, чем char память, вплоть до 1 бита. Например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Важно помнить, что они реализованы с помощью маски поверх байта или машинного слова и не могут выходить за его пределы. С точки зрения компилятора битовые поля структуры foo5 выглядят как двухбайтовые значения, из 16 бит которых используются только 12. Место после них заполняется так, чтобы размер структуры был кратен sizeof(short) — размеру наибольшего элемента. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Может быть вот так должно быть ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Сейчас конечно потестирую, но по концевому заполнению пояснено недостаточно чётко ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 07:06 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
Точнее так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 07:07 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
SashaMercuryWhite Owlпропущено... Ты хочешь перегрузку функций в Си? Ну и запросто, объектное программирование никто не отменял. Ниже код на С++, с использованием перегрузки функций Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. как вы предлагает сделать аналогичное на Си ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Правда сложно? Здесь никак не обойтись без перегруженных функций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 07:23 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
По 3 пункту вопрос снят, всё ок. Мне кажется что с перегруженными функциями код выглядит логичнее. Вы усложнили алгоритм за счёт побочных операций, мне кажется, что это того не стоит. Хотя я конечно намного менее опытный, может быть позже соглашусь с такой точкой зрения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 07:45 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
SashaMercuryПо 3 пункту вопрос снят, всё ок. Мне кажется что с перегруженными функциями код выглядит логичнее. Вы усложнили алгоритм за счёт побочных операций, мне кажется, что это того не стоит. Хотя я конечно намного менее опытный, может быть позже соглашусь с такой точкой зрения а кто тебе мешает написать функцию с другим именем? Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 08:19 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)SashaMercuryПо 3 пункту вопрос снят, всё ок. Мне кажется что с перегруженными функциями код выглядит логичнее. Вы усложнили алгоритм за счёт побочных операций, мне кажется, что это того не стоит. Хотя я конечно намного менее опытный, может быть позже соглашусь с такой точкой зрения а кто тебе мешает написать функцию с другим именем? Код: plaintext 1. SSMasterZivпропущено... странно, по-моему так достаточно очевидно: -- для того, чтобы не думать очень долго над названием функции -- для того, чтобы иметь возможность реализовывать user defined data types , встроенные в языке, и передумать для них разные операции. Лично для меня, дело даже не в том чтобы подумать о названии функций, а в том, что на незачем создавать кучу функций с разными именами только из-за того, что у них разные параметры, поскольку смысловая нагрузка на функции сохраняется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 08:36 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
А может кто-нибудь привести пример/частный случай, когда использование перегруженных функций хуже чем решения данного вопроса(примера) на языке Си (т.е. чем отсутствие перегрузки функций) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 08:39 |
|
||
|
Различные структуры данных. Реализация
|
|||
|---|---|---|---|
|
#18+
White OwlПравда сложно? Здесь никак не обойтись без перегруженных функций.и теперь ты должен знать реализацию твоей createTreeNode(const char* w). Ведь по декларации функции не понятно, можно ли туда передавать NULL, и что будет, если его туда передать. В случае перегрузки createTreeNode(); и createTreeNode( const char *w ); код самодокументирован. Если бы ещё не w, а имя осмысленное дать параметру, и элементу структуры... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2015, 09:51 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38882430&tid=2018439]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
82ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 285ms |
| total: | 482ms |

| 0 / 0 |
