C++构造函数使用默认参数的问题
template<classT>classMin4{public:Min4(T,T,T=0,T=0);TMin();boolsetNum(intk);private:Tm...
template <class T>
class Min4
{
public:
Min4(T,T,T=0,T=0);
T Min();
bool setNum(int k);
private:
T min(const T&,const T&);
T a,b,c,d;
int num;
};
如果在main()中,调用Min4<int> m(1,2);
程序能否知道当前对象m有几个实际参数。
补充一下:
就是说程序执行Min4<int> m(1,2);之后,是不是能知道当前对象传进去的参数个数。
我知道后面两个默认,但是程序怎么知道传进来的参数是(1,2,0,0),还是传进来的(1,2),这个怎么判断? 展开
class Min4
{
public:
Min4(T,T,T=0,T=0);
T Min();
bool setNum(int k);
private:
T min(const T&,const T&);
T a,b,c,d;
int num;
};
如果在main()中,调用Min4<int> m(1,2);
程序能否知道当前对象m有几个实际参数。
补充一下:
就是说程序执行Min4<int> m(1,2);之后,是不是能知道当前对象传进去的参数个数。
我知道后面两个默认,但是程序怎么知道传进来的参数是(1,2,0,0),还是传进来的(1,2),这个怎么判断? 展开
3个回答
展开全部
当然知道啦,没有赋值的取默认参数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class Min4
{
public:
Min4(T a,T b,T c=0,T d=0)
{
};
T Min()
bool setNum(int k);
private:
T min(const T&,const T&);
T a,b,c,d;
int num;
};
void main()
{
Min4<int>m(1,2);
}
编译运行,完全可以。
相当于把前两个参数值赋给前两个,后两个默认。
{
public:
Min4(T a,T b,T c=0,T d=0)
{
};
T Min()
bool setNum(int k);
private:
T min(const T&,const T&);
T a,b,c,d;
int num;
};
void main()
{
Min4<int>m(1,2);
}
编译运行,完全可以。
相当于把前两个参数值赋给前两个,后两个默认。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询