Il n'y a quasiment aucun intérêt à préallouer la mémoire pour une structure.
Le plus utile est de préallouer la mémoire pour chacun de ses champs.
Par exemple, la ligne suivante ne sert quasiment à rien :
S(1:100) = struct('data', [], 'text', []);
La où c'est utile, c'est uniquement quand la taille de chaque champs est connue d'avance, comme par exemple :
S(1:100) = struct('data', zeros(50), 'text', [])
Mon conseil, arrête de faire une fixation sur ce que l’analyseur de code (fonction mlint) souligne en orange dans l'éditeur. Si tu as un soucis de performance avec ton code, utilise plutôt le profiler (fonction profile) pour identifier les blocs de code gourmands en temps d'exécution.
Partager