前段时间用C#做项目开发,感觉到不错,泛型的确好的很,我在项目中大肆的使用.这个月做C++开发,没有原来那么爽了,本来以前是不怎么欣赏C#的,唯独钟情于C++,可用了C#后,再用起C++,感觉C++还真是繁琐,虽然语言只是工具,但开发效率仍是问题.各种语言各有千秋了.现在星期天了,也来研究下C++的泛型编程了,以供以后用了

泛型就是为了代码能够更好的复用,所以一般的小项目,基本用不到的,大的项目用着会很爽的,我目前的项目中如果用纯属是练手,那么小的项目,呵呵

记得很多介绍泛型编程的例子都是以数字相加为例的,如下代码所示:

 

template <class T>
T jj(T num1, T num2)
{
    
return num1+num2;
}

 

虽然这个能够解决那些问题,可是现实中我们很少会采用一种类型的数字相加的,数字类型有整型、浮点、双精度的,其实这个例子重在引人入门,却并没有吸引力

我把代码稍改下就有点吸引力了

 

template <class T1,class T2>
float jj(T1 num1, T2 num2)
{
    
return (float)num1+(float)num2;
}

 

这就可以实现不同类型的数字相加了,当然了如果嫌不够的话,可以把float改为double

C#中谈设计模式谈的很火,工厂之类的东西也多,C++在网上找这部分资料就不好找了,C++本来人少,高手更少,而高手又都忙,所以网上的文章不多,然高手在做软件设计时的确也是按照这样来的,其实软件设计模式真的很好,有设计的比没实际的好多了,公司里给我多小的项目,我都拿来分析下,一来可以练手,而来的确对后期的开发有所帮助,像我所在的小公司,开发意图完全靠老板的想法。想起什么东西就会让你搞什么,我经常问主管,哪个模块要不要,该不该做,最终效果怎么样,主管总是说,你先做上吧,老板看看再说,我都要吐血了。老板以为开发软件就是摆积木呀,想摆就摆,想拆就拆呀!

面对这样的环境,我就总是先设计下,看看有什么遗漏,想想日后老本可能会要求怎么样,然后慢慢编码(本来应该快速,可惜money不多)让老板看效果,改的时候,也有文档可惜,改起来虽然累点,也不至于吐血。

当然这样的环境应该换换,可恨得是现在有很多事情不允许我换,而且我也刚工作没多久,至少先在这做一段时间吧。

相关文章: