c++ - 如何让Clang改变两阶段查找的规则?

标签 c++ clang clang++

我希望编译时没有错误。只是想让它等到实例化

template<class T>
struct A : public T{
   void f(){ foo(); }
};

int main() {}

最佳答案

您可以将代码更改为:

template<class T>
struct A : public T{
   void f(){ this->foo(); } // or T::foo();
};

int main() {}

使 foo 类型依赖以修复您的代码。

关于c++ - 如何让Clang改变两阶段查找的规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56475513/

相关文章:

c++ - 为什么 M::operator<< 导致链接错误而不是 std::cout::operator<<

linux - 带有 clang++ 和 libc++ 的 linux 上的 std::cerr 导致 SIGABRT

c++ - 异常程序终止时的访问冲突 (C++)

c++ - Qt 对话框窗口在同一窗口中打开

C++ libPNG - 简单的初始化错误

MacOS安装LLVM

c++ - C++ 中的 log base 2 精度错误

c++ - 在 TextEdit Item Delegate 的定义中找不到错误

clang 无法独立解析我的 .h 文件

c++ - 删除了隐式声明的复制赋值运算符