读书人

基础有关问题连串问之:如何避免函数中

发布时间: 2012-02-05 12:07:14 作者: rapoo

基础问题连串问之:如何处理函数中的默认值?
假如一个函数fun()中,有两个有默认值的参数A、B,即fun(A, B)中,参数A、B都是有默认值的。

现在要参数A取默认值(且这个默认值编程时不知道),B不取默认值,调用函数时该如何写?

[解决办法]
能不能通过重载实现呢
[解决办法]
可以做一个参数记录这个默认值,让用户自己维护,或者在知道以后维护进行,在程序中,调用fun函数之前,将参数取出,传进去就可以了
[解决办法]

探讨
假如一个函数fun()中,有两个有默认值的参数A、B,即fun(A, B)中,参数A、B都是有默认值的。

现在要参数A取默认值(且这个默认值编程时不知道),B不取默认值,调用函数时该如何写?

[解决办法]
update(boolean accept)
update(boolean accept, boolean resetupdate)
重载函数
update(boolean accept)
{
update(accept, true)
}
[解决办法]
探讨
引用:
update(boolean accept)
update(boolean accept, boolean resetupdate)
重载函数
update(boolean accept)
{
update(accept, true)
}

这样做可是可以,就是不太灵活。
而且如果是全局函数,重载是个大问题。

[解决办法]
重载;
或者在函数中写判断,比如 isnull() 时用什么值...
[解决办法]
我觉得还是在调用时把值传进函数中,不管有没有值,都传入,无值就传空.

读书人网 >PB

热点推荐