Недавно я столкнулся с таким поведением в Matlab
, и мне любопытно узнать, почему это происходит.
a(1,:) = rand(4,1);
a(2,:) = rand(5,1);
Это вызывает у меня Subscripted assignment dimension mismatch.
ошибку, тогда как
a(1,:) = rand(4,1);
a(2,1:5) = rand(5,1);
настраивает массив на максимальный размер столбца и добавляет ноль к более коротким.
Мой вопрос: почему первый фрагмент кода не делает то, что делает второй (что мне кажется очень логичным)?Я не вижу причин, по которым прежний фрагмент кода должен работать так, как он работает.Или я что-то упустил?