WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Objekt einer Klasse erzeugen

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2014, 13:37     Titel: Objekt einer Klasse erzeugen
  Antworten mit Zitat      
Hallo! ich möchte 5 Objekte (person1, person2, person3, ...) einer Klasse "Personen" erzeugen. Leider funktioniert es mit dieser for-schleife nicht. Wo steckt der Fehler?

Code:

for i=1:5
    a=sprintf('mitarbeiter%d', i);
    a= Mitarbeiter;
end
 

Danke


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2014, 13:40     Titel:
  Antworten mit Zitat      
Ich meinte natürlich:

Code:
for i=1:5
   
    a=sprintf('person%d', i);
    a= Personen;
end
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 13.06.2014, 14:04     Titel:
  Antworten mit Zitat      
Hallo

Das klingt nach Dynamischen Variablen, das ist aber nicht empfehlenswert, siehe viele Kommentare zur EVAL-Konstrukten hier in Forum

Besser Dynamische Felder zu nutzen, oder Cell
Code:

% dynamische felder
for k = 1:5    
    a.(sprintf('person%d', k)) = Personen;
end

% cell
person = cell(1,5)

for k=1:5
 person{k} = Personen;
end



 
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.06.2014, 15:21     Titel:
  Antworten mit Zitat      
Hmmm...sorry bin Anfänger, ich bin mir aber nicht sicher ob deins das richtige für mich ist. Denn ich will eigentlich nur paar Objekte dieser Klasse erzeugen:

Code:
person1 =Personen;
person2 = Personen;
person3= Personen;
person4 = Personen;
person5 = Personen;


Statt das für jedes Objekt manuell einzutippen, wollte ich die for-Schleife benutzen. Also wie mach ich das am besten? Danke
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.06.2014, 16:43     Titel:
  Antworten mit Zitat      
Hallo,

ich stimme denny zu und empfehle vor allem den zweiten Vorschlag.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.06.2014, 18:45     Titel:
  Antworten mit Zitat      
Ok danke Smile
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.