您的位置:首页 > 编程语言 > C语言/C++

Windows驱动开发:用C还是C++

2013-04-07 15:41 281 查看
/article/9609636.html

在做windows驱动程序开发之前,首先要确定开发的语言。在常见的编程语言中,我们可以选择C、C++、汇编语言甚至Delphi。不过由于
微软提供的DDK开发环境所提供的文件和链接用的库只支持C和C++语言。所以一般都采用C或者C++。
使用C语言,是比较容易上手,因为很多人都是从学习C语言而学习程序开发的,而在驱动开发的时候,用C语言写相对比较简单,不需要考虑太多的限制。
用C++的话,在编译的时候,VC或者DDK都会出现调用错误的问题,这是因为调用方式不一致的缘故,因此,用C++开发的驱动程序,在DriverEntry前面一般
都要加上 extern “C” 这样的关键字,以统一调用方式。不过使用C++也有C++的优势,毕竟C++支持面向对象。在现在的程序设计中,面向对象是一种很重要的编程
思想,虽然在驱动程序的编写的过程中,一些C++的高级特性无法发挥,但是,相对而言,C++已近比较强大了。
另外,在使用C++进行驱动程序的开发的时候,需要注意一些问题:
² New等操作符不能直接使用,如果要使用,必须进行重载。
² 标准C接口的声明,在包含头文件以及入口例程的前面要声明extern “C”
² 类的静态成员函数的使用:在类内部声明一个静态函数作为分发函数Dispatch函数,这个静态函数当做普通的C函数调用,而C++声明的非静态函数调用该函数进行分配。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: