Function default parameters
    BCS 
    ao at pathlink.com
       
    Thu Nov 13 18:04:55 PST 2008
    
    
  
Reply to tim,
> I want to use the return value of another member function as the
> default  for a parameter. I could just overload it but I would prefer
> to do it like:
> 
> module test;
> 
> class Thing
> {
> char[] getString(uint len = this.strLen())
> {
> char[] a = new char[len];
> return a;
> }
> uint strLen()
> {
> return 6;
> }
> }
> int main()
> {
> Thing t = new Thing;
> char[] abc = t.getString;
> return 0;
> }
> test.d(6): Error: 'this' is only defined in non-static member
> functions,  not Thing
> 
Sorry. No sutch luck. The overload is what your stuck with.
    
    
More information about the Digitalmars-d-learn
mailing list