Mit Zeiger auf Settings Variablen zugreifen?

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Mit Zeiger auf Settings Variablen zugreifen?

    Hallo Zusammen,

    ich frage mich ob ich meinen Code, der mittlerweile durch viele Select Case Anweisungen sehr lang geworden ist nicht kürzen kann. Hier ein Bespiel:

    VB.NET-Quellcode

    1. Select Case Combobox.SelectedIndex + 1
    2. Case 1
    3. My.Settings.C1Name = Name
    4. Case 2
    5. My.Settings.C2Name = Name
    6. Case 3
    7. My.Settings.C3Name = Name
    8. Case 4
    9. My.Settings.C4Name = Name
    10. Case 5
    11. My.Settings.C5Name = Name
    12. End Select


    Mein erster Gedanke war wie bei C++ Zeiger anzuwenden, aber in VB gibt es keine Zeiger? Wenn es doch sowas wie Zeiger gibt wäre das zweite Problem: soweit ich gesehen habe kann man in den Settings keine Arrays anlegen, also keine Variablen die im Speicher direkt nebeneinander liegen (Speicheradresse inkrementieren...) möglich?

    Ich denke mein Anliegen ist leicht verständlich, ich freue mich wenn ihr Ideen für eine Lösung habt.

    Viele Grüße
    Nein, in VB.NET gibt es keine Zeiger in dem Sinn. Referenzen sind halt intern Pointer, aber direkte Arithmetik diesbezüglich kannst Du nicht verwenden.
    Arrays gibt es afaik wirklich nicht für die My.Settings, aber hast Du mal 'ne StringCollection versucht? Das sollte mWn vorhanden sein.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Also ich speicher das dann als System.Object, in den Settings-Fenster einfach in der typ-Auswahl durchsuchen wählen, System.Object suchen oder einfach in die Textbox eingeben.

    VB.NET-Quellcode

    1. Dim i() As Integer = {1, 2, 3}
    2. My.Settings.MySetting = i
    3. Dim ii() As Integer = DirectCast(My.Settings.MySetting, Integer())
    Cloud Computer? Nein Danke! Das ist nur ein weiterer Schritt zur totalen Überwachung.
    „Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, wird am Ende beides verlieren.“
    Benjamin Franklin
    @Kugelschreiber Willkommen im Forum. :thumbup:
    Vielleicht beschreibst Du zunächst, was Du insgesamt vor hast, da lässt sich vielleicht eine andere Herangehensweise ableiten.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!