阅读:2418回复:2
c++写驱动代码问题(构造and析构)
用c++写了个类,但构造函数和析构函数一旦加上就编译不通过,郁闷
请大侠们赐教: 我环境是win xp sp3 +vs 2003 + wdk 6001+ddk wizard 1.2 贴出类如下: //Cr0Cheat.cpp文件 #include "Cr0Cheat.h" Cr0Cheat g_Cr0Cheat; //Cr0Cheat::Cr0Cheat() //{ // Init(); //} // //Cr0Cheat::~Cr0Cheat() //{ // Release(); //} void Cr0Cheat::Init() { __asm { cli push eax mov eax,cr0 and eax,0FFFEFFFFh mov cr0,eax pop eax } } void Cr0Cheat::Release() { __asm { push eax mov eax,cr0 or eax,NOT 0FFFEFFFFh mov cr0,eax pop eax sti } } //Cr0Cheat.h 文件 #pragma once class Cr0Cheat { public: //Cr0Cheat(); //~Cr0Cheat(); void Init(); void Release(); }; extern Cr0Cheat g_Cr0Cheat; 貌似在_atexit出找不到正确的名字析构了。但我确实想用全局变量,该怎么办。是不是要对函数做调用约定的特殊处理,望大侠们赐教啊 |
|
沙发#
发布于:2009-06-25 22:57
怎么都没有人来帮助一下。我自己先顶一下。
据说是编译器在编译成驱动的时候,很多c++特性没有了,其中这个就是。 希望有高手能详细解释一下,谢谢了。。。。。 |
|
板凳#
发布于:2009-06-30 15:19
不能在全局变量中使用c++类
可以只声明一个指针,在运行时new出来一个实例。 |
|
|