- For scalar values && is (in general) faster than & because it only evaluates the right argument if the left argument is TRUE.
- Defensive programming: by using && you assert that its arguments are scalar. If later they are erroneously not scalar then && will stop with an error (rarher than continuing in some unknown state).
- Clarity to the reader
using "&" with logical array
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Luca Re
el 13 de Feb. de 2024
oN is a array Logical
col is array Logical
why is not correct using &?
K>> class(oN)
ans =
'logical'
K>> class(col)
ans =
'logical'
0 comentarios
Respuesta aceptada
Stephen23
el 13 de Feb. de 2024
Editada: Stephen23
el 13 de Feb. de 2024
"why is not correct using &?"
Who says that it is not "correct" ? What you show is not a code error (underlined in red), it is a recommendation (underlined in orange)
Benefits:
If you want to ignore this recommendation then right-click and select one of the "ignore" options.
3 comentarios
Stephen23
el 13 de Feb. de 2024
Editada: Stephen23
el 13 de Feb. de 2024
"The array is a logical type so the correct use of the operator is to use the "&" for logical operations.
You just invented that rule yourself: there is no rule saying that scalar values must use &.
In contrast the static code parser is written by the people who actually develop MATLAB.
""&&" if they are scalars but this is not the data type in question"
MATLAB does not have a "scalar" data type, they are all arrays:
Most likely the data in question is scalar: assuming that k is a scalar subscript then both of the arguments to && will be scalar, and the recommendation is completely appropriate. That is most likely what the static parser has detected. Your invention of non-existent data types and non-existent rules does not help you.
Question: what size do oN(k) and col(k) have?
Más respuestas (0)
Ver también
Categorías
Más información sobre Multidimensional Arrays en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!