И ещё один баг. Со строковыми переменными - страница 2

 

Может быть имеет смысл вот так попробовать: после декларации массива сделать инициализацию каждого из его элементов пустой строкой. У меня была проблема с массивом строк и именно так Rosh порекомендовал решить проблему. Запускать тест мне лень, но попробуй возможно этот подход тебе поможет.

string array[100];
for(int i = 0; i < ArraySize(array); i++)
   array[i] = "";
array[1]="a"+"b";
string txt=array[1];
txt=txt+txt;
 
Причина мучений со строками в MQL-4 это "древний" способ обработки строк в котором пытаются сохранять строки и мучаются с адресами..
Однако, строковые перемнные работают корректно когда каждый раз переписывается массив строки, при такой перезаписи не возникет проблем "утечки памяти строк" это уже 30 лет как современное решение
(но появляется проблема "сбора мусора").
Если мы знаем что на строках MQL-хх экономит быстродействие и память, то обращаемся со строками осторожно и все получается ровно.
 

Этот баг со сложением строки саму в себя поправлен. Компилятор генерировал неверный код.

 
может тогда и будет работать txt+=txt;?
 

В PHP это

$txt.=$txt

 
Integer писал (а) >>
может тогда и будет работать txt+=txt;?

Нет. В текущей реализации это работать не будет.