关于CArray模板
cqlhj 2003-12-11 04:29:51 CArray<CPoint,CPoint> Sarray;
CArray<CPoint,CPoint> Darray;
.........
Sarray.add......
Darray.add.....
现在,想将Darray里和Sarray相同的元素删除。想设计一个函数来进行这项工作,想将这个函数声明为:decdim(CArray &ddim,CArray sdim);然后就可以如下使用这个函数:decdim(Darray,Sarray);
事实是,我却不能这样作,因为这样的程序无法通过编译。
实在不知道如何作,没办法的情况下,这样解决的问题:
新增加一个非常简单的类,比如为tmpa,在这个类的声明中,有唯一成员:
CArrary<CPoint,CPoint> myarray;
然后再在程序里产生tmpa的实例:
tmpa Sarray;
tmpa Darray;
然后,声明一个函数:
decdim(tmpa &ddim,tmpa sdim)
{
......
ddim.myarray.......
sdim.myarray....
}
.....
最后可以:
decdim(Darray,Sarray);
这样子虽然解决了问题。可觉得非常难过。
万望哪位高手能给指条明路,给个正确的方法。
还有,因水平太差,也许没说清楚,见笑了。
哦,想起来了,也许就是一个如何解决向一个函数传递CArray模板参数的问题,真的希望你能看看。