[問題] template argument deduction
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux + clang3.0
#include <iostream>
class A {
};
class X {
public:
operator A() { return A();}
};
void g(A)
{
std::cout<<"g(A)"<<std::endl;
}
template <typename T> void f(T x)
{
g(x);
}
int main()
{
f(X());
}
code出處 C++ Templat:The Complete Guide 10.3.5
我有稍微改了一下
這裡有作了一個conversion from X to A
但想請問的是
在template arguement deduction
不是會ignore implict type conversion的嗎??
(像這case implict type conversion through user-defined conversion)
為什麼這裡可以編的過呢???
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.135.229
→
12/20 00:13, , 1F
12/20 00:13, 1F
→
12/20 00:13, , 2F
12/20 00:13, 2F
→
12/20 00:14, , 3F
12/20 00:14, 3F
→
12/20 00:15, , 4F
12/20 00:15, 4F
→
12/20 01:32, , 5F
12/20 01:32, 5F
→
12/20 01:38, , 6F
12/20 01:38, 6F
→
12/20 02:07, , 7F
12/20 02:07, 7F
→
12/20 02:25, , 8F
12/20 02:25, 8F
→
12/20 09:02, , 9F
12/20 09:02, 9F
→
12/20 09:02, , 10F
12/20 09:02, 10F
→
12/20 09:03, , 11F
12/20 09:03, 11F
→
12/20 09:03, , 12F
12/20 09:03, 12F
→
12/20 09:03, , 13F
12/20 09:03, 13F
→
12/20 09:04, , 14F
12/20 09:04, 14F
→
12/20 09:06, , 15F
12/20 09:06, 15F
→
12/20 09:08, , 16F
12/20 09:08, 16F
→
12/20 09:35, , 17F
12/20 09:35, 17F
→
12/20 09:37, , 18F
12/20 09:37, 18F
→
12/20 11:17, , 19F
12/20 11:17, 19F
→
12/20 11:38, , 20F
12/20 11:38, 20F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章