On 2009-10-22 10:07:15 -0400, Andrei Alexandrescu
<seewebsiteforem...@erdani.org> said:
Refer to:
http://www.digitalmars.com/d/2.0/struct.html
and scroll down to the last section, "Nested Structs". A struct defined
inside a function has a hidden pointer to that function's stack frame
and therefore can use function's local variables.
Nested classes do a similar trick, but for those there's a bit of
motivation - you could create a nested class and use it as a sort of
closure by returning a base class or interface of it.
With nested structs, however, you can't do much. You can pass them to a
template, but I can't see some solid use cases there. My understanding
is that nested structs have been implemented for completeness and
consistency with nested classes.
Any good example of nested struct uses?
I tried implementing things using nested structs in my mfr.xml
module[1] but, for some reasons I don't remember anymore (template
issues?), I wasn't too successful and ended up creating anonymous scope
classes. All this because of the lack of nested overloaded functions.
[1]: see:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=98861
--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/