Por que não há necessidade de definir campos de estruturas antes de atribuí-los?

Estou trabalhando com o código de outra pessoa no MATLAB e parece que ele está criando estruturas, apenas usando nomes de campos sem declará-los. É assim que funciona no MATLAB, você apenas começa a usar nomes de campo que não diferenciam maiúsculas de minúsculas de sua escolha?

Então, por exemplo, ele tem algo parecido com isto:

classdef Emitter
   properties
      transients=[];
   end
end

... some other class
   methods
      function sound=makeSound()
         emitterthing.transients.receivedIntensity = 100
         emitterthing.transients.frequency = 500
      end
   end 

Em outras palavras, ele apenas começa a inventar nomes de campos e atribuir valores a eles sem declarar os nomes dos campos ou seu tipo.

É assim que funciona no MATLAB?

questionAnswers(2)

yourAnswerToTheQuestion