История изменений
Исправление intelfx, (текущая версия) :
a = new double*[rows];
for (unsigned i = 0; i < cols; ++i) {
Ты создаёшь массив из rows элементов, а итерируешься до cols. Просто повреждаешь себе кучу.
Исходная версия intelfx, :
a = new double*[rows];
for (unsigned i = 0; i < cols; ++i) {
Ты создаёшь массив из rows элементов, а итерируешься до cols. Неудивительно, что возникает corruption.