写操作之前,还是扼要的说一下托管与非托管C++的区别好了,其实我也并没有深入了解过托管C++的特点所在,其最大的特征就是可以由系统来调试回收相关的代码资源,跟C#的特性一样,只是编程风格跟C++类似而已,因此,这决定了C#与托管C++是可以完美结合在一起的。托管C++生成的dll跟C#生成的dll应该说是没区别的,之所以产生托管C++这种怪物,完全是因为微软在极力推崇C#,必须要兼顾不同语言间交互
经过一晚上的折腾,还是下点决心将些许的心得写下来,以免以后重复劳动。C#与C/C++相比,前者的优势在于UI,后者的优势在于算法,C++下的指针虽然恶心,若使用得当还是相当方便的,最重要的问题是,市面上很多流行的开发工具库,几乎没有不支持C++的,但全面支持C#只能说是难得,在CPU发展到今天,若说C#的执行效率跟C++相比有很大的差距并不是那么靠谱,若非万不得已我还是宁愿用C#来写代码,调试什么
其实,我的C++入门就是从GDI开始的,想在CE上面写应用程序,若兼程序界面太难看那就必须用回GDI了。GDI是一种古老而又非常麻烦的技术,在C#年代还好点,但VC++下,玩GDI记得最最重要的一点是,一定要注意GDI资源的回收,否则你的程序会没跑几下就弹出错误窗口,原因大概都是内存泄漏。所以凡是遇上CPen,CBrush,CBitmap,GetDC()...等等,请打醒十二分精神。 因为以前吃
我在自己上一篇博文《C++类成员函数指针使用实例》中已经写了怎么跨类地使用类成员函数指针的,但,但没有处理成员函数指针里隐含的this指针,所以在被调用的成员函数里使用this指针时,就会让人抓狂,因为this根本无法用。经过一晚上的研究,当然无法避免参考别人的代码,于是将成员函数指针的使用打包成了一个类——事实上也只是保存好this指针与成员函数指针而已,其代码如下:
现在想想,我玩C++还真是处于没入门的阶段呢,函数指针跟指针函数貌似是挺好用的东西,抱着实用主义的思想一直没的好好研究过。当然,也不能自大到丁点也没研究过的地步,其实在类内部的函数指针的使用没太大的困难,这在网上Google一下就可以得到很多详细的说明,但跨类来使用函数指针还真不好找,在此推荐一篇好文章:http://www.vckbase.com/index.php/wv/1514能将此文看懂,
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号