Отвечу сразу всем, без цитат.
Сабжевый вопрос у меня возник после регулярного просмотра форумов по программированию на Паскале/Delphi, где новички или пытаются использовать динамические массивы (не всегда корректно, на мой взгляд), или им советуют их использовать, а библиотеки контейнеров VCL/LCL остаются за рамками советов.
При этом на уровне кода только статические массивы не влекут дополнительных накладных расходов, придавая тип непрерывным блокам памяти, а динамические массивы уже реализованы библиотечными функциями, незаметно вставляемыми компилятором в код. Код этих функций никак не пересекается с реализацией TList и TStrings, там эта функциональность фактически продублирована. Есть подозрение, что это результат работы разных групп программистов, своего рода "придумано не нами" в рамках одной компании, типа ATL и MFC, но в Delphi. Историю не копал, утверждать не могу.
Тем не менее, простой запрет был бы вполне логичен, заставляя для ОО-типов пользоваться ОО-контейнерами. Быдлокода стало бы хоть чуть-чуть меньше, -- и в Интернете, и IRL.
__________________
Не стоит путать форумы с богадельнями. © Bargest
|