Cant index into a constant Property of a class

1 visualizzazione (ultimi 30 giorni)
Tyler Wright
Tyler Wright il 8 Dic 2021
Commentato: Tyler Wright il 28 Gen 2022
I am trying to index into a string array, that is stored into the property of a constants class i created. When i get to the line of code (below) where the call is made, it returns the entire array. But when i insert that line of code into the command window, it runs just fine.
if Data.isCellOpen(Constants.CellNames(1), index)

Risposte (1)

Prince Kumar
Prince Kumar il 21 Gen 2022
Hi,
You can index into string array just like normal indexing. Please look at the code below for reference:
classdef NamedConst
properties (Constant)
R = pi/180
D = 1/NamedConst.R
AccCode = '0145968740001110202NPQ'
str = ["Mercury" "Gemini" "Apollo";
"Skylab" "Skylab B" "ISS"]
end
end
Now you can use the class name NamedConst to access the property and index it.
disp(NamedConst.str(1))
This "disp" function gives Mercury as output.
For more information please refer the the documentation : Defining Class Properties with Constant Values
Hope this helps!
  3 Commenti
Prince Kumar
Prince Kumar il 28 Gen 2022
Hi,
Can you please share the script if possible?
Tyler Wright
Tyler Wright il 28 Gen 2022
For the script for your code, i have the class made and the script has 1 line of code and it is the disp(...) code you wrote.
If you run this below as a script, it never will index into "NamedConst.str", unless you save it into an intermediate array (testArr) below
disp(NamedConst.str(1))
testArr = NamedConst.str;
for i = 1:numel(NamedConst.str)
% disp(NamedConst.str(i))
Temp = NamedConst.str(i)
Temp2 = testArr(1)
end

Accedi per commentare.

Prodotti


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by