Sto*_*ica 6

不它不是.不在您的简单程序中.

[basic.def.odr]

3如果某个函数的唯一查找结果或一组重载函数的选定成员([basic.lookup],[over.match],[over.over]),则其名称显示为可能已计算的表达式的函数将被使用. ]),除非它是纯虚函数,并且其名称未显式限定或表达式形成指向成员的指针([expr.unary.op]).

main不会出现在潜在的评估表达式中,因此它不会使用.此外,我们必须考虑以下事项:

[basic.start.main]

3函数main不得在程序中使用.

这是否适用于简单地调用 main或任何用途,这可能是值得商榷的,但它肯定会限制你main在任何程序中使用odr的选择.

这是值得分析ODR使用时,它是牢记程序是ODR-使用实体(或不使用它们).外部力量(例如使用main作为切入点的实施)不受该辩论的影响.