how can I insert comments into a multiline array creation?
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Andrew Diamond
el 27 de Dic. de 2017
Comentada: Fergil Mills
el 15 de Jul. de 2019
This works
>> p = [...
%%%BEGIN ENTRIES %%%
'a1;', ...
'b;', ...
'c;'
]
p =
a1;b;c;
but commenting out the 'b' line doesn't
p = [...
%%%BEGIN ENTRIES %%%
'a1;', ...
% 'b;', ...
'c;'
]
Dimensions of matrices being concatenated are not consistent.
0 comentarios
Respuesta aceptada
Walter Roberson
el 27 de Dic. de 2017
p = [...
%%%BEGIN ENTRIES %%%
'a1;', ...
... % 'b;', ...
'c;'
]
Note: ... itself acts as a comment operator for the rest of the line, so you could get away with
p = [...
%%%BEGIN ENTRIES %%%
'a1;', ...
... 'b;', ...
'c;'
]
However this would tend to confuse people as it is not common to use this and readers might not pick up on the fact the rest of the line was a comment.
2 comentarios
Walter Roberson
el 27 de Dic. de 2017
... has the side effect of also ignoring the rest of the line, but it has the primary effect of continuing the previous statement.
The portion of the 'b;' line before the % is not commented out, so
p = ['a1;', ...
% 'b;', ...
'c;']
is the same as
p = ['a1;', ...
'c;']
which is not the same as
p = ['a1;', ...
'c;']
The
p = ['a1;', ...
'c;']
version should be looked at as if it were
p = ['a1;', ...
[]
'c;']
which would be the same as
p = ['a1;', []
'c;']
The default within [] is that lines that do not end in continuation are treated as if they had ; at the end of them, so this is
p = ['a1;', [];
'c;']
which is
p = ['a1;';
'c;']
and that fails because the number of columns is not equal.
Más respuestas (1)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!