14.2.4 Binary operator overload resolution

王朝other·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

An operation of the form x op y, where op is an overloadable binary

operator, x is an expression of type X,

and y is an expression of type Y, is processed as follows:

?The set of candidate user-defined operators provided by X and Y for the

operation operator op(x, y)

is determined. The set consists of the union of the candidate operators

provided by X and the candidate

operators provided by Y, each determined using the rules of ?4.2.5. If X

and Y are the same type, or if X

and Y are derived from a common base type, then shared candidate operators

only occur in the combined

set once.

?If the set of candidate user-defined operators is not empty, then this

becomes the set of candidate

operators for the operation. Otherwise, the predefined binary operator op

implementations become the

set of candidate operators for the operation. The predefined

implementations of a given operator are

specified in the description of the operator (?4.7 through ?4.13).

?The overload resolution rules of ?4.4.2 are applied to the set of

candidate operators to select the best

operator with respect to the argument list (x, y), and this operator

becomes the result of the overload

resolution process. If overload resolution fails to select a single best

operator, a compile-time error

occurs.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航