| Thread overview | |||||||
|---|---|---|---|---|---|---|---|
|
September 10, 2012 Allow auto in function parameters with default arguments? | ||||
|---|---|---|---|---|
| ||||
It occurred to me that using a parameter with a default value that is a function call could benefit from using auto:
struct Foo(T) { }
auto getFoo()
{
return Foo!int();
}
void func(int x, auto foo = getFoo()) { }
Granted this is a simple case and might be overkill, but if the function returns some complicated range type (or worse, a Voldemort type) it might be hard or impossible to specify the type.
| ||||
September 10, 2012 Re: Allow auto in function parameters with default arguments? | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Andrej Mitrovic | On 09/10/2012 06:20 AM, Andrej Mitrovic wrote: > It occurred to me that using a parameter with a default value that is > a function call could benefit from using auto: > > struct Foo(T) { } > > auto getFoo() > { > return Foo!int(); > } > > void func(int x, auto foo = getFoo()) { } > > Granted this is a simple case and might be overkill, As parameter names are optional, foo is parsed as the parameter type in this case. What exact change do you propose? > but if the function returns some complicated range type (or worse, a Voldemort > type) it might be hard or impossible to specify the type. > Every type that you can get hold of a value of can be specified by the means of typeof. | |||
September 10, 2012 Re: Allow auto in function parameters with default arguments? | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Timon Gehr | On 9/10/12, Timon Gehr <timon.gehr@gmx.ch> wrote:
> Every type that you can get hold of a value of can be specified by the means of typeof.
Yeah but it's repetitive. typeof(exp) arg = exp;
| |||
September 11, 2012 Re: Allow auto in function parameters with default arguments? | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Andrej Mitrovic | http://forum.dlang.org/thread/is9jmn$2ia5$1@digitalmars.com | |||
September 11, 2012 Re: Allow auto in function parameters with default arguments? | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Mehrdad | On 09/11/12 08:21, Mehrdad wrote:
> http://forum.dlang.org/thread/is9jmn$2ia5$1@digitalmars.com
Completely different issue. That one is about syntax sugar for template functions, while this one would just save the programmer some typing when declaring "normal" functions (by propagating the type of the default argument expression, which would make it possible to skip the redundant 'typeof(expr)' part).
artur
| |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply