Zum Inhalt springen

Static Variable in C#, wie eine Static Variable in C++


Empfohlene Beiträge

Geschrieben

gibt es eine static variable in c# wie static in c++ benützt wird?

bsp.:

rufe ich eine funktion rekursiv auf und möchte ich zählen auf

welcher ebene ich bin hätte ich in c++ eine static variable

die ich in der funktion deklariere, d.h. sie ist nur in dieser funktion sichtbar.

ändere ich den wert dieser variable, rufe diese funktion wieder auf habe ich den veränderten wert dieser variable in der neu aufgerufenen funktion,

pseudocode bsp.:

main {

_CountAndWrite();

}

function _CountAndWrite() {

static int i = 0;

i++;

cout<<i+"\n";

_CountAndWrite();

}

ausgabe:

1

2

3

4

...

gibt es sowas in c#? wenn ich diese variable nicht als parameter übergeben möchte?

Geschrieben

Du kannst die Rekursion in eine eigene Klasse stecken, und dort über eine Membervariable die Rekursionstiefe nachhalten. Möglicherweise kannst du dir auch ein zustandsbehaftetes rekursives Delegate basteln.

Aber am einfachsten dürfte es sein, den Zustand (hier also die Rekursionstiefe) als Parameter zu übergeben.

Geschrieben
gibt es etwas "ähnliches"?

muss doch irgendwie abgebildet werden?

Ich werf mal singleton in den Raum.

Das man etwas in Methoden nicht als static deklarieren kann, sollte einleuchten, da man Object-State in eine Methode packen würde, und sobald der Methodenkontext verlassen wird, wäre es vom Rest des Objektes aus nicht möglich, auf den static-state zuzugreifen, da static hier dann minimum Objekt-Statisch, wenn nicht sogar Prozessstatisch ist.

Macht also Sinn, das sowas nicht in C# geht.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...