ЕМ
Елена Матюха

Выходит, что в Delphi 7 тип string весьма быстрее, чем PChar?

Сегодня провел тест. В цикле от 1 до 16777216 раз использую функцию System.Pos (которая работает с типом string) и SysUtils.StrPos (аналог для PChar). Разница во времени выполнения составляет около 2 секунд.. . Странно, ведь использование типа string это всегда возрастание размера программы и как следствие - не очень высокая скорость, а тест показал обратное.. . Как такое может быть?

ST
Shambet Tookeev

Во первых, нет условий теста. Во-вторых, стринги бывают разные. В-третьих, увеличение размера программы уменьшение скорости.
По третьему пункту: большинство алогоритмов оптимизуруются по 2-м параметрам: время выполнения и необходимая память. Причем, обычно, уменьшение времени выполнения увеличивает необходимы объем доступной памяти (это особенно хорошо видно на примере алгоритмов сортировки) . И наоборот - уменьшая требования по памяти, мы увеличиваем время работы алгоритма.

Ан
Андрей

Стринг и ПЧар по разному задают строки. У стринга к примеру всегда сразу известна длина, а у ПЧар-а - нет.

Похожие вопросы
Где найти видеурок по Delphi 7 ???Где найти видеурок по Delphi 7 ???
Delphi 7 FileListBox
Delphi 7 PageControl
string c++. Задаю переменную а типа string. Что храниться в переменной а? массив char? если да, то какой размер string a;
String. Подскажите как можно отсортировать переменную типа string по возрастанию, в С++?
Подскажите по Delphi 7
программирование на Delphi 7
помогите по Delphi 7
Строку какой длины может вместить переменная с типом string?
Невозможно преобразовать значение типа "string" в "System.Windows.Forms.Label".