![]() |
#2
代号2152013-11-08 21:51
|

extern double foo(double);
template<class TYPE>
class ScopeRules {
public:
void test1() {
_member=foo(_val);
}
TYPE test2() {
return test1(_member);
}
private:
int _val;
TYPE _member;
};
ScopeRuleS<int> s;
s.test1();
书中解释说在这里 程序中有两个函数实例
extern double foo(double);
extern int foo(int);
我的问题:
1.foo的参数是double 传int没有问题 但是这么返回类型也变成int了?
2.foo又不是一个函数模板 他为什么会出现两个实例?