【发布时间】:2011-10-27 01:34:10
【问题描述】:
class Register
{
private:
DWORD ax,dx,cx,bx; // POH
DWORD bp,sp;
DWORD flag, ip;
public:
//====================================================
Register()
{
ax = 0x0;
dx = 0x0;
cx = 0x0;
bx = 0x0;
bp = 0x0;
//memset(&this->sp,0,sizeof(sp));
sp = 0x0;
flag = 0x0;
ip = 0x0;
}
//====================================================
~Register()
{
}
//====================================================
void setAx(DWORD d)
{
ax=d;
}
//====================================================
DWORD getSp()
{
return sp;
}
}*PReg;
为什么函数getSp(); 会出现访问冲突错误?
【问题讨论】:
-
问题不在于这段代码,而在于调用方。贴出代码
-
void push(DWORD buf) { DWORD d = PReg->getSp();堆栈[d]=buf; PReg->incSp(); }
-
它在这里工作,但是当我这样做时: InstList->Lines->Add(PStack->pop()); // InstList - TMemo
-
您还没有显示
PStack和PReg->incSp的代码。
标签: c++builder access-violation