Laden...

[Anfänger] public Variablen?

Erstellt von dennisspohr vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.035 Views
Thema geschlossen
dennisspohr Themenstarter:in
420 Beiträge seit 2007
vor 16 Jahren
[Anfänger] public Variablen?

Hallo @ all,

hier mal eine Anfängerfrage...ich habe alles durchsucht, die MSDN, google, myCSharp,....und habe nichts passendes gefunden, wahrscheinlich ist es dafür zu einfach... rofl
Hier mein Problem:
Ich schreibe ein kleines Consolenprogramm für den internen Gebrauch meiner Firma. In diesem Programm möchte ich einen StringDirectory erzeugen, dass alles ist im Pronzip auch kein Problem...nur möchte das Erzeugen sowie Befüllen des StringDirectory in eine Methode packen (CreateExcludeList(dir)😉
Da ich den StringDirectroy noch im Main-Teil bentutzen möchte, frage ich auch wie ich den StringDirectory public mache, und zwar IN der Methode "CreateExcludeList", nicht davor...
Ich habe es versucht mit "public StringDictionary excludeList = new StringDictionary();", allerdings spuckt er dann eine Fehlermelung aus:

Invalid expression term 'public'

Ich hoffe ihr nehmt euch ganz kurz Zeit für mich. 😉
Schonmal danke für ALLE Antworten!!

lg Dennis

PS: Ich habe sonst nichts gefunden! 😦

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo dennisspohr,

erstmal fängt es so an: Variablen sollte man nie public machen! Außerdem macht es wohl kaum einen Sinn das Dictionary als lokale Variable der Methode zu definieren, weil es dann bei jedem Aufruf der Methode wieder weg ist.

Und wenn du dich entschieden hast, nicht direkt auf das Dictionary, sondern über die Methode zuzugreifen, dann solltest du das an allen Stellen durchziehen und nicht im Main eine Ausnahme machen.

Es ist also gar nicht so sehr eine Frage von public Variablen, sondern von gutem Design, was du erst noch umsetzen musst.

Siehe auch [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen).

herbivore

1.665 Beiträge seit 2006
vor 16 Jahren

Original von dennisspohr
Ich hoffe ihr nehmt euch ganz kurz Zeit für mich. 😉
...
PS: Ich habe sonst nichts gefunden! 😦

Die kurze Zeit nehm ich mir.
Sorry, aber würdest du dir die Grundlagen aneignen, am Besten in Form eines Einsteigerbuches, würdest du die Art und Weise der (C#)-Programmierung näher kennenlernen und am Ende wissen wie du dein Problem angehst.

dennisspohr Themenstarter:in
420 Beiträge seit 2007
vor 16 Jahren

Erstmal Danke für (edit: eure Antworten)!! Vielleicht sollte ich den Teil "im Main-Teil noch benutzen" anders formulieren: Ich möchte von der Methode einen Wert zurückgegeben haben, also eine Funktion (Delphi).

So würde der Aufruf aussehen:

Exclude = createExcludeList(dir);

Ich übergebe ich den Wert in der Methode?
In Delphi würde das z.B. so ausehen:

function createExcludeList(dir: string): test: string;
[...]
return "erfolgreich";

lg Dennis

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo dennisspohr,

sorry, aber wie man einen Wert aus einer Methode zurückgibt, sind nun wirklich Grundlagen, die du dir selber aneignen musst. Eine Mögliche Quelle dafür wurde schon genannt. Am besten du arbeitest das Buch mal gründlich durch, bevor du weiter fragst.

herbivore

dennisspohr Themenstarter:in
420 Beiträge seit 2007
vor 16 Jahren

Ja...ich würde gerne bzw. ich habe ja auch schon ein wenig angefangen, das problem is nur ich muss möglichst schnell mit dem Programm fertig werden... g

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo dennisspohr,

ja, aber das ist nicht unser Problem, sondern das zwischen dir und deinem Chef. Jedenfalls kann es kaum angehen, dass wir deine Probleme ausbaden oder kompensieren müssen. Das ist ein kostenloses Forum. Wir helfen gerne. Aber wir haben auch unsere Regeln:

Auf der anderen Seite ist myCSharp.de kein reines Anfängerforum. Wir setzen grundlegende Kenntnisse voraus, zum Beispiel über den Aufbau von Windows-Forms-Anwendungen. Solche grundlegenden Kenntnisse erwirbt man leichter und besser, wenn man ein Buch durcharbeitet. Anfänger sollten daher akzeptieren, wenn sie bei zu grundlegenden Fragen auf das Selbststudium verwiesen werden.

Also akzeptiere das bitte.

herbivore

dennisspohr Themenstarter:in
420 Beiträge seit 2007
vor 16 Jahren

ja...du hast Recht, trotzdem vielen Dank! Und...Entschuldigung! 🙂

lg Dennis

1.665 Beiträge seit 2006
vor 16 Jahren

Dann sag deinem Chef, mit freundlichen Grüßen, dass er dir bitte doch die Zeit geben soll (ca. 2 Wochen) um ein Einsteigerbuch durchzuackern oder sag ihm du hast es in den letzten Wochen schlicht und einfach verpennt 🙂

dennisspohr Themenstarter:in
420 Beiträge seit 2007
vor 16 Jahren

heeh^^ mal sehen....ich arbeite aber auch erst seit knapp 1 1/2 Wochen in C# 😉

lg Dennis

Thema geschlossen