MATLAB कक्षाओं में स्थिर सदस्य चर परिभाषित करने का कोई तरीका है?MATLAB कक्षाओं में स्थिर सदस्य चर कैसे प्राप्त करें?
यह काम नहीं करता:
classdef A
properties (Static)
m = 0;
end
end
यह "स्थिर" के बजाय कीवर्ड "लगातार" का उपयोग करने का सुझाव देते हैं, लगातार गुण संशोधित नहीं किया जा सकता है। मैं वर्ग A
वर्ग की सभी वस्तुओं के लिए एक चर सामान्य चाहता हूं और मैं कक्षा A
के तरीकों में उस चर को संशोधित करने में सक्षम होना चाहता हूं।
तो मुझे जो चाहिए वह एक निजी स्थैतिक सदस्य चर है। MATLAB में इसे प्राप्त करने का कोई तरीका है?
बाहर पाया गया कि एक वैकल्पिक हल स्थिर सदस्य कार्यों में लगातार वैरिएबल का उपयोग किया जा सकता है।
इस मामले में आपको निम्न वर्गों से निम्न वर्गों से अपने सभी वर्गों का उत्तराधिकारी होना चाहिए।
classdef object < handle
properties (GetAccess = 'public', SetAccess = 'private')
id
end
methods (Access = 'protected')
function obj = object()
obj.id = object.increment();
end
end
methods (Static, Access = 'private')
function result = increment()
persistent stamp;
if isempty(stamp)
stamp = 0;
end
stamp = stamp + uint32(1);
result = stamp;
end
end
end
इसका अर्थ AFAIK के लिए नहीं है, लेकिन [लगातार] (http://www.mathworks.com/help/techdoc/ref/persistent.html) काम करता है? –
हां, मैंने स्थिर सदस्य फ़ंक्शन में लगातार चर के साथ एक समाधान प्राप्त किया है। – Vahagn
आपको इसे इस प्रश्न में रुचि रखने वाले अन्य लोगों के उत्तर के रूप में पोस्ट करना चाहिए –