我用 GCC 和 Clang 尝试了这个程序,但都没有输出
#include <iostream>
struct A {
  A(){}
  template<typename T>
  A(T &) {
    std::cout << "copied!";
  }
};
void f(...) { }
int main() {
  A a;
  f(a);
}
根据我的标准阅读,这个程序应该输出"copied!". 谁能告诉我是我弄错了还是这两个编译器中的错误?
我用 GCC 和 Clang 尝试了这个程序,但都没有输出
#include <iostream>
struct A {
  A(){}
  template<typename T>
  A(T &) {
    std::cout << "copied!";
  }
};
void f(...) { }
int main() {
  A a;
  f(a);
}
根据我的标准阅读,这个程序应该输出"copied!". 谁能告诉我是我弄错了还是这两个编译器中的错误?