Originale-mail to me for new edition

 

Default parameters and overloaded routines

 

If you use default parameter values in an overloaded routine, avoid ambiguous parameter signatures. Consider, for example, the following.

procedure Confused(I: Integer); overload;

 ...

procedure Confused(I: Integer; J: Integer = 0); overload;

 ...

Confused(X);    //  Which procedure is called?

In fact, neither procedure is called. This code generates a compilation error.

 

Topic groups

 

See also

Default parameters

Overloading procedures and functions

 

 

译文

 

缺省参数和重载例程

 

如果在重载例程中使用了缺省参数,那么应避免参数标记不明确。例如,

procedure Confused(I: Integer); overload;

 ...

procedure Confused(I: Integer; J: Integer = 0); overload;

 ...

Confused(X);    //调用哪一个过程?

实际上,没有哪一个过程被调用。上面的代码将产生编译错误。

 

主题组

 

相关主题

缺省参数

重载过程和函数