Sau khi tìm thấy một số logic trong how empty structs are dealt with, tôi muốn kiểm tra cách tổng quát này thành ma trận.Sự khác biệt giữa phần tử đầu tiên của ma trận 1x1 và tất cả các phần tử của ma trận 1x1
Ở đây tôi nhận thấy những điều sau đây:
Nếu bạn có ma trận 1x1 và gán cho phần tử đầu tiên. Nó không giống như gán cho tất cả các phần tử.
Điều này khiến tôi ngạc nhiên vì yếu tố đầu tiên thực sự giống như tất cả các yếu tố trong trường hợp này. Dưới đây là những quan sát của tôi:
x = 1;
y = 1;
z = 1;
x(:) = []; % Evaluates to [] as I expected
y(1) = []; % Evaluates to Empty matrix: 1-by-0, rather than []
z(1,1) = []; %Throws an error: 'Subscripted assignment dimension mismatch.' even though size(z) gives [1 1];
z(1,:) = []; % Evaluates to Empty matrix: 0-by-1, just like z(:,:) = []
Sau khi nhìn thấy câu hỏi này của tôi là:
Tại sao gán để điều tương tự theo những cách khác nhau, dẫn đến bốn kết quả khác nhau?
Bạn có quan tâm hoặc đây có phải là vấn đề thực sự cho bạn không? –
@DennisJaheruddin Bạn nên làm việc trong nhóm QA của TMW :) –
@SamRoberts Câu hỏi * tại sao * hầu hết không quan tâm, nhưng đặc biệt là sự khác biệt giữa tình huống thứ nhất và thứ tư khiến tôi lo lắng về mã nguồn của mình. Do đó nó không chỉ là một câu hỏi mà còn là một cảnh báo. –