14.4.2 Overload resolution

Overload resolution is a compile-time mechanism for selecting the best
function member to invoke given an
argument list and a set of candidate function members. Overload resolution
selects the function member to
invoke in the following distinct contexts within C#:
?Invocation of a method named in an invocation-expression (?4.5.5).
?Invocation of an instance constructor named in an
object-creation-expression (?4.5.10.1).
?Invocation of an indexer accessor through an element-access (?4.5.6).
?Invocation of a predefined or user-defined operator referenced in an
expression (?4.2.3 and ?4.2.4).
Each of these contexts defines the set of candidate function members and
the list of arguments in its own
unique way. However, once the candidate function members and the argument
list have been identified, the
selection of the best function member is the same in all cases:
?First, the set of candidate function members is reduced to those function
members that are applicable
with respect to the given argument list (?4.4.2.1). If this reduced set is
empty, a compile-time error
occurs.
?Then, given the set of applicable candidate function members, the best
function member in that set is
located. If the set contains only one function member, then that function
member is the best function
member. Otherwise, the best function member is the one function member that
is better than all other
function members with respect to the given argument list, provided that
each function member is
compared to all other function members using the rules in ?4.4.2.2. If
there is not exactly one function
member that is better than all other function members, then the function
member invocation is
ambiguous and a compile-time error occurs.
The following sections define the exact meanings of the terms applicable
function member and better
function member.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值