मैं एक मैटलैब स्क्रिप्ट लिख रहा हूं जहां मेरे पास एक ही आत्म परिभाषित वर्ग की वस्तुओं का समूह है, A
, B
और C
कहें। तब मेरे पास एक ऐसा फ़ंक्शन है जो 2 ऑब्जेक्ट्स पर काम करता है, जैसे func(A,B)
।Matlab में ऑब्जेक्ट्स के पॉइंटर्स की सरणी कैसे बनाएं?
अब मैं ऑब्जेक्ट चुनना चाहता हूं, A
कहें, और फिर func(A,x)
अन्य सभी ऑब्जेक्ट्स के माध्यम से।
func(A,B)
func(A,C)
A.update()
func(B,A)
func(B,C)
B.update()
...
तो मैं थोड़ी देर में ही निश्चित रूप से को छोड़कर, सभी वस्तुओं मैं के माध्यम से लूप कर सकते हैं की एक सरणी बनाने की जरूरत: तो मूल रूप से की तरह कुछ हासिल करते हैं। मैं सेल सरणी के साथ यह करने की कोशिश की, तो मैं है:
AllObjs = {A,B,C}
for i=1:length(AllObjs)
if ~isequal(A, AllObjs{i})
func(A, AllObjs{i})
end
end
A.update()
हालांकि, जब A
अद्यतन किया जाता है, AllObjs
में A
अपडेट प्राप्त नहीं करता है। तो अगले लूप के लिए मुझे सभी ऑब्जेक्ट्स की एक नई सरणी बनाना है। यह इस सरल उदाहरण में करने योग्य है लेकिन ऑब्जेक्ट्स कहीं और अपडेट होने पर प्रबंधनीय नहीं है। तो मैं सभी वस्तुओं को पॉइंटर्स की एक सरणी रखना चाहता हूं। मेरी Google खोज मुझे बताती है कि मैटलैब में कोई सूचक नहीं है, लेकिन क्या मैं यहां क्या करना चाहता हूं, हासिल करने का कोई तरीका है?
कोई मेरी कक्षा 'handle' जरूरत नहीं है। क्या कोई दस्तावेज़ है जो यह करता है? – LWZ
मैटलैब दस्तावेज़ों में बहुत कुछ है और https://stackoverflow.com/q/6436539/4196396 देखें – matlabgui