[Issue 2495] New: const syntax for member functions needs better description
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sat Dec 6 11:23:58 PST 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2495
Summary: const syntax for member functions needs better
description
Product: D
Version: 2.021
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: www.digitalmars.com
AssignedTo: bugzilla at digitalmars.com
ReportedBy: jlquinn at optonline.net
The syntax for declaring const member functions is not very clear. There is no
grammar. You need to infer from various examples what to do. For instance:
class B {}
class A {
B x;
const B getB() { return B; }
}
doesn't compile, because this is a const function returning a nonconst value.
I had to find the answer on a forum. It's challenging to figure this out from
the docs:
class B {}
class A {
B x;
const const(B) getB() { return B; }
}
Examples covering more use cases would probably help, as well as more formally
describing how const is specified. Perhaps modifying the example of an
invariant member function to return a value (other than string) would help.
--
More information about the Digitalmars-d-bugs
mailing list