C++ C++;论元替换规则

C++ C++;论元替换规则,c++,templates,arguments,template-argument-deduction,C++,Templates,Arguments,Template Argument Deduction,随后,, 我想理解C++的论证推理规则。例如: LI>当智能指针和智能指针时,C++多态替换的规则 使用容器 常量和非常量参数之间的自动转换 何时可以将临时表作为参考传递 这些规则在模板参数推断方面有什么不同 如果标准中有相关章节,你也可以指出这一点。我认为这个问题太宽泛了,我不明白所有的问题都是什么。Jere是我的拍摄对象: 模板推导不关心基类或转换。它推导出一个静态类型。只有在没有直接匹配的情况下,如果转换可以解决此问题,它才会尝试,并且通常只应用一个转换。例如,如果传递的类型是一个原始指

随后,, 我想理解C++的论证推理规则。例如:

<> LI>当智能指针和智能指针时,C++多态替换的规则 使用容器
  • 常量和非常量参数之间的自动转换
  • 何时可以将临时表作为参考传递
  • 这些规则在模板参数推断方面有什么不同

  • 如果标准中有相关章节,你也可以指出这一点。

    我认为这个问题太宽泛了,我不明白所有的问题都是什么。Jere是我的拍摄对象:

  • 模板推导不关心基类或转换。它推导出一个静态类型。只有在没有直接匹配的情况下,如果转换可以解决此问题,它才会尝试,并且通常只应用一个转换。例如,如果传递的类型是一个原始指针,那么期望的类型是一个智能指针,它可以从它应该找到的内置指针隐式转换而来
  • 对于值类型,忽略常量。对于引用或指针类型,非常量指针或引用可以转换为相应的非常量版本。然而,推导出的元组不会有cv限定符,尽管可以使用cv限定符类型显式实例化相同的函数。如果你推断ab
    T&
    不同的规则适用
  • 临时只能绑定到
    const
    限定的左值引用和右值引用。这在语言中是普遍存在的
  • 这个对比是什么

  • 这个问题很好,但范围很广。可能想把它分解成多个问题。好的。将此作为社区wiki是否更好?我会重构。你到底不确定什么?你的教科书在哪一点上不清楚?在这个问题中,对常量引用的多态性替换而不是对非常量引用的多态性替换让我感到惊讶。@ATemp:这个问题实际上与多态性无关,而是与绑定到常量引用的临时变量有关。正如你的大多数问题,你接触的一百万个小部分的C++可能是最好的掌握通过学习语言,而不是要求一个是所有的结束所有配方。