Article View: comp.std.c++
Article #1511Re: Default Argument Resolving Problem
From: Steve Clamage
Date: Mon, 31 Jul 1995 17:08
Date: Mon, 31 Jul 1995 17:08
21 lines
1034 bytes
1034 bytes
In article 14s3@hrz-ws11.hrz.uni-kassel.de, Ralf Boecker <boecker@hrz.uni-kassel.de> writes:
>
>extern int i = 1;
>extern void f( int x = i );
>extern int main() {
> i = 2;
> f(); // == f(2) of course
> int i = 3; // from now on lokal i hides global i
> f(); // f(2) or f(3) ?
>};
>
>At which point will the *name* of a default argument be resolved?
A default parameter value is bound (e.g., names are resolved) at the location
where the value expression appears.
In your example, the default argument value is always the current
value of the extern 'i'.
---
Steve Clamage, stephen.clamage@eng.sun.com
Technical Details
Message-ID:
<3vj2m0$8it@engnews2.Eng.Sun.COM>Path:
arc1-ca.pugleaf.net!engnews2.Eng.Sun.COM!usenetReferences:
<3vb4t8$14s3@hrz-ws11.hrz.uni-kassel.de>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!engnews2.Eng.Sun.COM!usenet From: clamage@Eng.Sun.COM (Steve Clamage) Newsgroups: comp.std.c++ Subject: Re: Default Argument Resolving Problem Date: 31 Jul 1995 17:08:16 GMT Organization: Sun Microsystems Inc. Message-ID: <3vj2m0$8it@engnews2.Eng.Sun.COM> References: <3vb4t8$14s3@hrz-ws11.hrz.uni-kassel.de> Reply-To: clamage@Eng.Sun.COM NNTP-Posting-Host: taumet.eng.sun.com