gpt4 book ai didi

c++ - 如何在 C++ Visual 2010 中检查指针是否为空

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:07:51 24 4
gpt4 key购买 nike

如果我想检查 eerste 是否指向我得到的任何内容,我会遇到问题

Blockquote

Unhandled exception at 0x003921c6 in Bank.exe: 0xC0000005: Access violation reading location 0xccccccd0.

我有点想知道为什么他只是跳过 if 语句或者在对象 eerste 指向任何内容时不停止

Bank::Bank()
{
LijstElement *eerste = NULL;
LijstElement *laatste = NULL;
}

Rekening * Bank::getRekening(int rekNr)
{

if(NULL != eerste)
{
LijstElement *nummer = eerste;
while(nummer->volgende!= NULL)
{
Rekening *een = nummer->getRekening();
if(een->getRekNr()==rekNr)
{
return een;
}
else
{
nummer = nummer->volgende;
}
}
}
return NULL;
}

最佳答案

我认为你必须改变

Bank::Bank()
{
eerste = NULL;
laatste = NULL;
}

因为它们可能在您的类中声明为成员变量,而您将它们声明为局部变量。

正如 Fred Larson 所建议的,您还可以使用初始化列表。

Bank::Bank() : eerste(NULL), laatste(NULL)  
{
//whatever else you are planning to do in your constructor
}

关于c++ - 如何在 C++ Visual 2010 中检查指针是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2469931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com