关与指针的问题。。
代码:
.h
class BMP
{
public:
BMP(int a,int b,int c);
~BMP();
friend BOOL operator== (const BMP &bit1,const BMP &bit2);
void Plus(BMP &bit1);
int length,hight,number;
int *p;
};
***************
.cpp
BMP::BMP(int a,int b,int c)
{
if(a != 0&&b != 0&&c != 0)
{
length = a;
hight = b;
number = c;
p = new int[a*b*c*3];
for(int a = 0;a < a*b*c*3;a++)
{
p[a] = 0;
}
}
}
BMP::~BMP()
{
if(p != NULL)
{
delete []p;
p = NULL;
}
}
void CMainFrame::OnSetDialog()
{
// TODO: Add your command handler code here BMP bit(1,1,1);
char str[8];
sprintf(str,"%d",bit.p[0]);
MessageBox(str);
}
输出 -58245644
不知道怎么回事 望各位高手回答。。
谢谢。。