I was getting some strange results and I came across one of the problems.
I have the following Pseudo code:
I thought by Dimming a Player structure inside the for Loop and doing the get would have me working on a copy of the Player which I now know is not tru
When I change the Player.Handicap in then Player Handicap loop not only is it changing the copy of Player but it is also changing the copy inside the Players List.
So it appears that the is really NO reason for a Set after I do the Get? Because I am actually working on the real player?
Player = Players.Get
do something then
Normally I would do a
Players.Set(x, Player)
But that is not needed?
I have the following Pseudo code:
B4X:
Type TDB_Scoring_Player(RecordID As Long, GridRow As Int, ScoreCardName As String, Handicap As Int)
Dim PlayingPlayers as int
Dim Players as List ' NOTE: This is a list of TDB_Scoring_Player types filled in by somewhere else
For PlayingPlayers = 0 To Players.Size-1
Dim Player As TDB_Scoring_Player = Players.Get(PlayingPlayers) ' thought I was getting a copy
Do While Player.Handicap > 0
'----------------------------------------- Alot of other code not shown
Player.Handicap = Player.Handicap - 1 ' Changed this value
Next
Loop
I thought by Dimming a Player structure inside the for Loop and doing the get would have me working on a copy of the Player which I now know is not tru
When I change the Player.Handicap in then Player Handicap loop not only is it changing the copy of Player but it is also changing the copy inside the Players List.
So it appears that the is really NO reason for a Set after I do the Get? Because I am actually working on the real player?
Player = Players.Get
do something then
Normally I would do a
Players.Set(x, Player)
But that is not needed?