Laden...

Methode aufrufen, wenn bestimmtes Bit/Flag gesetzt ist (für Debug-Level)

Erstellt von Grimmbizkit vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.217 Views
Thema geschlossen
G
Grimmbizkit Themenstarter:in
310 Beiträge seit 2006
vor 9 Jahren
Methode aufrufen, wenn bestimmtes Bit/Flag gesetzt ist (für Debug-Level)

Abend zusammen,

Ich habe eine Frage, denn ich komme einfach nicht auf die Lösung bzw weiß nicht wonach ich suchen muss.

1 -> Funktion 1
2 -> Funktion 2
4 -> Funktion 3
8 -> Funktion 4

Nun möchte ich mit einer Zahl (in einer ConfigDatei) die Funktionen nutzen.
Beispiel
11 -> Funktionen 1,2 und 4
12 -> Funktionen 3 und 4
9 -> Funktion 1 und 4

Hoffe ihr könnt mir auf die Sprünge helfen

Gruß Simon

T
461 Beiträge seit 2013
vor 9 Jahren

Hallo, also wenn ich das richtig vertstanden habe möchtest du, daß verschiedene Methoden nur dann aufgerufen werden, wenn eine Variable z.Bsp.


int DebugLevel = 11;

den Wert 11 hat?

Wenn dem so ist, könnte man das mit Methoden-Attribute machen:
Erstellen benutzerdefinierter Attribute (C# und Visual Basic)

Ich habe den Titel mal angepasst, so dass Suchende auch etwas damit anfangen können. EDIT: Ich sollte beim Wort "Shift" im Titel das "f" nicht vergessen... 😄

D
152 Beiträge seit 2013
vor 9 Jahren

Hallo, ich würde sagen hier kommen Bitoperationen in Frage.

  • (DebugLevel & 1) -> Funktion 1
  • (DebugLevel & 2) -> Funktion 2
  • (DebugLevel & 4) -> Funktion 3
  • u.s.w
Hinweis von herbivore vor 9 Jahren

Wie man abfragt, ob ein bestimmtes Bit gesetzt ist, gehört zu den Grundlagen der Space C#, siehe [Hinweis] Wie poste ich richtig? Punkt 1.1.1. Außerdem findet man Informationen im Netz dazu, siehe z.B. den verlinkten Artikel und Punkt 1.1.

Thema geschlossen