tôi đã tạo ra một lớp MATLAB, một cái gì đó như:Làm thế nào để thay đổi thuộc tính của một đối tượng Matlab
classdef myclass
properties
x_array = [];
end
methods
function increment(obj,value)
obj.x_array = [obj.x_array ; value);
end
end
end
Vấn đề là, tài sản x_array
không bao giờ được sửa đổi khi tôi gọi increment()
chức năng: ví dụ:
Tôi đã thực hiện một số nghiên cứu và tôi đã đạt được kết luận rằng vì MATLAB sử dụng Bản sao Lười biếng cho các đối tượng, khiến lớp của tôi kế thừa lớp HANDLE nên đã giải quyết vấn đề này, nhưng không ai biết tại sao đây là hạnh phúc ning? Và nếu mở rộng lớp xử lý được xem là giải pháp, đây có phải là cách đúng để thực hiện:
classdef myclass < handle
hoặc có thêm bước nào không?
gần như trùng lặp với http://stackoverflow.com/questions/209005/object-oriented-matlab-properties – Azim