|
|
auf andere Funktion in class-folder zugreifen |
|
Molly |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.04.2016, 08:51
Titel: auf andere Funktion in class-folder zugreifen
|
|
Hallo liebe Matlab-Community,
ich habe ein Programm mit mehreren Klassen Ordnern (@Folder). Ich möchte jetzt von einer neuen Funktion aus auf einige dieser Folder zugreifen. Ich bekomme immer einer Fehlermeldung in der Art:
Undefined function FunctionName for Input arguments ot type 'x'.
Ich habe versucht sowohl den "überordner" wo das gesamte Programm drin ist, als auch die Class-folder einzeln mit addpath in der Funktion hinzuzufügen, aber leider klappt das nicht. Ich bekomme weiter die selbe Fehlermeldung.
Hat jemand eine Idee woran das liegen könnte? Oder was ich anders machen muss?
Danke für eure Hilfe!
Molly
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 21.04.2016, 13:41
Titel: Re: auf andere Funktion in class-folder zugreifen
|
|
Hallo Molly,
Angenommen, die Ordnerstruktur sie so aus:
Dann wird nur 'D:\Matlab' in den Pfad eingebunden. Die entsrpechenden Klassen-Unterordner werden automatisch gefunden, wenn eine Funktion mit einem entsprechenden Input aufgerufen wird.
Die Funktionen in einem Class-Ordner kann man nicht mit beliebigen anderen Inputs aufrufen, denn das wäre nicht die Natur einer Class.
Gruß, Jan
|
|
|
Molly |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.04.2016, 14:06
Titel:
|
|
Hallo Jan,
danke für deine Antwort. Ja meine Struktur sieht so aus
Wenn ich eine Funktion x1 aus class1 in meinen Ordner Program hole, wo auch die Funktion y liegt die x1 aufrufen will, dann funktioniert es.
Also kann es doch irgendwie nicht nur am Input liegen, oder?
Molly
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 22.04.2016, 09:45
Titel:
|
|
Hallo Molly,
Dochm, genau das bedeutet Deine Beobachtung. Wenn die Funktion x1 im Ordner @class1 liegt, wird sie dann und nur dann aufgerufen, wenn das erste Input die Klasse class1 hat.
Dies ist in der Dokumentation erklärt, siehe z.B. http://www.mathworks.com/help/matla.....g-classes-in-folders.html .
Diese Seite ist übrigens der erste Treffer, wenn man Google nach "Matlab class folder" fragt. Im Netz zu suchen ist oft schneller als im Forum zu fragen.
Du kannst das auch einfach ausprobieren: Erstelle zwei Order @double und @uint8 und kopiere in beide die Funktion:
Nun rufe die Funktionen auf:
Letzteres scheitert, weil es nirgendwo eine Funktion @single\whatami.m gibt.
Klarer?
Gruß, Jan
|
|
|
Molly |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.04.2016, 09:43
Titel:
|
|
Hallo Jan,
Vielen Dank , ja es ist klarer geworden.
Grüße,
Molly
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|