构 可串构{//三个
显 可串构(常 符*s){串 n=s;切换(n);}
显 可串构(符*s){串 n=s;切换(n);}
显 可串构(串&s){切换(s);}
显 可串构(){}//必须加上.否则要报错
空 切换(串&s){};//改成空函数,可隐藏父的函数
};//继承,再加上(用 可串构::可串构)
上面的代码是没用的.没考虑到这是构造函数.基类构造函数是不能调用子类成员的,也不能静转<子类*>,因为基类还没构造好
.所以,只有:
#define 可串构(S) \
显 S(常 符*s){串 n=s;切换(n);}\
显 S(符*s){串 n=s;切换(n);}\
显 S(串&s){切换(s);}\
S(){}
//这是构造函数,没法,只有定义宏了.S为目标,不过感觉还更简单了.