Qt读取访问在以下位置发生冲突:0x0,标志=0x0(第一次机会)
Qt read acces violation at:0x0, flags=0x0 (first chance)
我有一段非常简单的代码,如下所示:
Letter* Vakje::geefLetter() const
{
return m_letter;
}
类Vakje用m_letter
的NULL指针初始化,但我仍然收到读取访问冲突错误,有人能帮忙吗?
这是调用函数的代码:
bool Spelbord::positionIsEmpty(int rij, int kolom) {
if (vakjes[rij][kolom]->geefLetter()==nullptr) return true;
else return false;
}
如果vakjes[rij][kolom]
是NULL
,则尝试取消引用该指针->
会导致未定义的行为(通常为:崩溃)。
只需将代码更改为:
bool Spelbord::positionIsEmpty(int rij, int kolom) {
if (vakjes[rij][kolom] == nullptr) return true;
if (vakjes[rij][kolom]->geefLetter()==nullptr) return true;
return false;
}
相关文章:
- 即使使用调试编译标志,表达式也是"optimized out"
- 在 CMake 中为每个目标设置编译器/链接器标志
- File.cpp.o:OpenPose 标志 CMakeFiles/.. 的多重定义/main.cpp.o:首先在这里定
- 在轮班操作后使用携带标志
- 如何找出引入AVX标志的内容
- I2C 文件描述符上的 I2C 总线可写/可读标志
- C ++是否有C ++ 17 OSX 10.13.6的标志
- 每次使用带有LOCK_EX标志的LOCK_NB时,相同的程序/进程都会获取锁
- CMake 3.5 中的链接器标志位置
- 如何使用 gnu gcc 标志 -mpc32、-mpc64 和 -mpc80?
- 在 CMake 中添加全局编译标志
- -Wlifetime 标志的目的是什么?
- Visual Studio 19-17 库兼容性根据 GL 标志
- 标志 |= f == s[i],这个语句会做什么?
- Visual Studio 中是否有来自代码块的编译器标志的类似物?
- 如何在 clang 的自动会议中检查支持编译标志
- 使用 boost::p rogram_options 指定多个标志
- 如何告诉 gcc 显示您使用的优化标志列表
- 生成文件中隐式规则中的 -c 标志出错
- Qt读取访问在以下位置发生冲突:0x0,标志=0x0(第一次机会)