TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
joep vullinghs
NA
1
1.6k
Something between a class and a struct
Jul 5 2011 9:42 PM
Hi,
Consider this:
Dim Male as new Gender(EnumGender.Male)
Person1.Gender=Male
Person2.Gender=Male
Person2.Gender.Name="Female"
If Gender was an object, Person1 would have turned female together with Person2. What I wanted to say was: "I do have a GenderCode for Person2, and you, Gender, should go figure out what exact Enumerator value should be attached to that". I've hacked this but it doesn't feel right. The correct way would be:
Person2.enumGender = GenderName2Enum("Female")
which is much work (is there a function like that? where is it?) and just feels old-fashioned. I'd love some syntactic sugar somehow that let's you say "I'm not changing a complete object, just a value of the object it belongs too, but I do it in a luxurious way. Maybe like
Person2.Gender!Name="Female"
Saying: I'm changing a property of the Gender, but I only mean it for Person2 so if some other object happens to have the exact same Gender object please clone it before this one is changed by me. (remotely similar to the way strings are handled)
The Enum declaration could have some property-like functions like below:
Public Enum Gender
Male=0
Female=1
Public Set Name(Value as String)
if Value="Male" then return Male
if Value="Female" then return Female
Throw Exception("What?")
End Set
Public Get Name
if me=Male then return "Male"
if me=Female then return "Female"
End Set
Public Set Code(Value as Integer)
if Value=1 then return Male
if Value=2 then return Female
Throw Exception("What?")
End Set
End Enum
In my case I have 1, Man, Male all meaning Gender.Male. And I did write code that wouldn't turn Person1 in the first example to be female. But as people using my objects wouldn't expect that behaviour, I'd like to see a nice way to put this in the next version of VB.
Reply
Answers (
0
)
ASP.NET MVC 3 Custom Controls based on user selection
Select number of rows from DDL in crystal report