c++ - 非限定名称何时/为什么/如何在依赖库中查找?
问题描述
对于 C++17,我在 [temp.dep]p3 中找到了这个措辞
在类或类模板的定义中,从属基类 (17.7.2.1) 的范围不会在类模板或成员的定义点或类模板的实例化期间或在非限定名称查找期间检查,或成员。
但看看最新的草案(在 eel.is 上),情况似乎发生了变化。该文本不再出现在该位置,并且我不知道该规则是否仍然存在,或者以较弱的形式(如果它们是依赖的可能会被查找,但如果找到基类成员则格式错误? ) 或根本没有!
解决方案
什么也没有变。相关规则现在是[class.member.lookup]/4:
计算每个直接非依赖 ([temp.dep.type]) 基类中N的查找集 […]
这样就不需要对 [temp] 中的名称查找规则进行特殊覆盖。
推荐阅读
- javascript - 将字段值从 ResolverQuery 传递给解析器
- typescript - 当即时需要第二个泛型参数时,如何仅使用一个泛型参数调用泛型函数?
- javascript - 如何使图表背景透明
- python - 实时交通摄像头抓取
- jsf - 覆盖 PrimeFaces 的 MediaRenderer
- c++ - 反向功能超出了我的 cpp 程序的范围
- java - 即使覆盖 JPanel 的 paintComponent() 方法,Java 图形也不会在 Mac 上显示
- amazon-web-services - 如何为许多 s3 对象创建一个冰川档案?
- linux - 通过 shell 脚本参数化 Curl 请求
- kubernetes - 如何阻止我的(k8s)入口中的路径?