www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - problem with pointers

reply bobef <bobef_member pathlink.com> writes:
I am writing a XML parser in D, because all the links with such libriraries are
dead. And I have the following problem. When I parse the tags I set parent to
each node (with pointer, basicly "something.parent=&somethingelse;"). When all
is done address of objects seems changed and I get Access Violation if I use
"node.parent". I tried to do the work with "cast(XMLnode*)somethingelse" instead
of "&somethingelse" but it doesnt work neither. I could't find documentation
about pointers in D and I'm stuck. Any ideas why is this?
Jan 15 2005
next sibling parent "Ben Hinkle" <ben.hinkle gmail.com> writes:
"bobef" <bobef_member pathlink.com> wrote in message 
news:csbh1t$2i0e$1 digitaldaemon.com...
I am writing a XML parser in D, because all the links with such libriraries 
are
 dead. And I have the following problem. When I parse the tags I set parent 
 to
 each node (with pointer, basicly "something.parent=&somethingelse;"). When 
 all
 is done address of objects seems changed and I get Access Violation if I 
 use
 "node.parent". I tried to do the work with "cast(XMLnode*)somethingelse" 
 instead
 of "&somethingelse" but it doesnt work neither. I could't find 
 documentation
 about pointers in D and I'm stuck. Any ideas why is this?
Assuming your nodes are class objects and not structs it will work if you remove the &. Class objects in D have reference semantics (like Java, unlike C++) so using & takes the address of the reference not the object itself. -Ben
Jan 15 2005
prev sibling next sibling parent "Manfred Nowak" <svv1999 hotmail.com> writes:
bobef wrote:
[...]
 I get Access Violation if I use "node.parent".
[...] Seems that you want to use "node.parent*". -manfred
Jan 15 2005
prev sibling parent "Miguel Ferreira Simões" <Kobold netcabo.pt> writes:
Try this! (I hope it works... I am no longer using this version)
I am going to re-design it soon.

Miguel Ferreira Simoes 


begin 666 DXml-v1.20.rar
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
4;6PM=C N,C `L/#N`<0]>P! !P``
`
end
Jan 15 2005