![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Senior Member
![]() Registriert seit: 03.10.2000
Beiträge: 176
|
![]() Bin ziemlich neu bei VB.net und hab eine Frage zu arrays.
Zunaechst einmal - man kann Variablen vom Zugriff von aussen offensichtlich durch so einen Konstrukt schuetzen. Public Property x() As Double Get x = x_ End Get Set(ByVal value As Double) x_ = value End Set End Property Meine Frage: Kann man so was aehnliches auch mit Arrays machen? Und zwar indem man den Index zusammen mit dem Wert uebergibt? |
![]() |
![]() |
![]() |
#2 |
Classic Car Driver
![]() |
![]() Also unter C# kann man das indem man den Indexer mit "this" implementiert. Wie da der Syntax allerdings unter VB.NET aussieht darfst mich nicht fragen. Aber der nachfolgende Link hat da ein Beispiel sowohl in C# als auch VB.Net (obwohl ich den VB.Net Syntax immer noch entsetzlich zu lesen finde)
http://msmvps.com/blogs/manoj/archiv.../15/15891.aspx |
![]() |
![]() |
![]() |
#3 |
Hero
![]() Registriert seit: 04.09.2001
Beiträge: 894
|
![]() hi,
sollte es nicht: Get return x End Get heißen? ich kenn die vb.net syntax aber auch nicht, da ich nur c# programmiere (von den .net sprachen). Wenn du die Variable "gegen Zugriff von außen schützen" willst, solltest du jedoch die Set Methode entfernen. Zweck von Properties ist es nicht unbedingt die Varibale vor dem Zugriff zu schützen, sondern vor dem setzten die Möglichkeit einer Prüfung zu haben. Beispiel: public string name; => kann von außen zugegriffen werden und jeder beliebige wert zugewiesen werden. ABER: private string _name; public Name set { if (value.Length < 10) _name = value; } ...ist halb c#, halb pseudocode, aber das prinzip sollte es erklären. ![]() fg hannes |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|