0
struct type{};
template<typename T>
void foo(T in) { bar(in, type()); }
void bar(int, const type&) {}
int main() { foo(42); }
這並不(正如我在previous question from today教訓):
template<typename T>
void foo(T in) { bar(in); }
void bar(int) {}
int main() { foo(42); }
是第一個片段也編譯的原因與ADL解釋?如果是這樣,怎麼樣?
模板參數是基本類型,ADL不應該爲它工作...爲什麼使用類型type
有什麼區別?