bormant
С такой, что типов динамических массивов стандатных 1-8 байтных переменных всего несколько штук, а статических массивов таких же переменных можно наопределять триллионы. Но раз халявы нет, то сравнивать можно и через функцию, перебирая по одному элементу - компьютеры у нас сейчас мощные, переберут и не заметят. Собственно, вопрос оптимизации сравнения массивов встал из-за пересылки данных между потоками: лишний раз посылать не желательно, вот для оптимизации и приходится проверять, а надо ли вообще пересылать на данном витке цикла.
А хотя, это идея, для пересылки массивов однобайтовых данных можно использовать строки:)
дубликация данных в динамических массивах
Модератор: Модераторы
stanilar писал(а):Если динамический массив - это указатель, то для него правильно писать FreeMem.
Динамический массив это не указатель, это динамический массив. Особенности работы с такими массивами описаны в справочной системе, как и другие не менее неочевидные вещи, и их нужно просто знать.
ger0strat писал(а):Если это вызывает такие негодования, то что мешает перегрузить оператор?
Перегрузить оператор мешает то, что «array of T» — это не один тип, а целое семейство типов, параметризованное типом T. А перегрузка операторов для дженериков — уже нетривиальная задача (лично я не умею и не знаю возможно ли это), да и претензий к дженерикам выше крыши.
Опаньки
А я всю жизнь думал, что массивы тоже copy-on-write
Хорошо, что я их никогда не копирую. Если у меня где есть массив - это или поле класса, к которому все обращаются через этот класс, или локальная переменная.
Хорошо, что я их никогда не копирую. Если у меня где есть массив - это или поле класса, к которому все обращаются через этот класс, или локальная переменная.
