Right that makes sense :-)
So you could use a pointer then?
example
type
TMyRec = Record
name : string;
end;
var
a : TMyRec;
b : ^TMyRec;
begin
a.name := 'Bob';
b := @a;
b.name := 'Smile';
showmessage(a.name); //shows Smile
Judd, Struan (eCargo) wrote:
Records are constructs with Value semantics whereas Objects have
Reference semantics.
This means that in the following code is the Assignment 1 and Assignment
2 are semantically identical:
Var a, b: record
name: String;
age: Integer;
end;
Begin
a.name := 'Me';
a.age := 39;
// Assignment 1
b := a;
// Assignment 2
b.name := a.name;
b.age := a.age;
End;
TTFN, Struan.
Nick wrote:
Got something weird here - weird because I probably don't understand
it properly but it caused me a bit of delay... Simplified, I had a
global array of records, during my procedure I would do something
like this
PRec := MyArrayofPRec[0];
PRec.name := 'Hi';
Now for some reason I was expecting MyArrayOfPRec[0].name to be now
'Hi'
as well, but it's not.
Here is an example that I whipped up just now which lead me to expect
this.
type
TMyRec = Record
name : string;
end;
var
Form1: TForm1;
TTH : TMyRec;
procedure TForm1.FormCreate(Sender: TObject); begin
TTH.name := 'BoB';
end;
procedure TForm1.Button1Click(Sender: TObject); var
t : TMemo;
b : TMyRec;
begin
t := Memo1;
t.lines.add('hi');
b := TTH;
b.name := 'Smile';
t.lines.add(TTH.name);
end;
Now in this example when it's ran and button 1 is clicked - Hi is
added to the Memo1 and Bob is added.
So why can I assign Memo1 to T and all actions done to T are done to
Memo1, but the same isn't with the Record.
Is it because Record isn't from TObject?
I guess it's like
var
a,b : integer;
begin
a := 1;
b := a;
b := 10; //a still = 1 which is what I would expect end;
so is it because TMemo is an Object and the record and a,b above are
just variables?
O.o
Thanks
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [EMAIL PROTECTED] with
Subject: unsubscribe
DISCLAIMER: This electronic message together with any attachments is
confidential. If you are not the intended recipient, do not copy, disclose or
use the contents in any way. Please also advise us by return e-mail that you
have received the message and then please destroy. Carter Holt Harvey is not
responsible for any changes made to this message and / or any attachments after
sending by Carter Holt Harvey. We use virus scanning software but exclude all
liability for viruses or anything similar in this email or any attachment.
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [EMAIL PROTECTED] with Subject: unsubscribe
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to [EMAIL PROTECTED] with Subject: unsubscribe