为什么 heob 在 QCreator 生成的代码中将这些检测为内存泄漏
Why does heob detect these as memory leaks in QCreator generated code?
我尝试修复应用程序中的内存泄漏,但其中大多数来自QCreator生成的UI代码。它们真的是内存泄漏吗?例如,检测到这样的设置后缀。
spinBox_trainingPeriod->setSuffix(QString::fromUtf8(" sec."));
结果:
16 bytes in 1 blocks are lost in loss record 8949 of 8951 (#248981)
in calloc in
1: calloc in
2: public: static class QString QInputMethod::tr(char const *,char const *,int) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
3: public: static class QString QInputMethod::tr(char const *,char const *,int) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
4: public: static class QString QInputMethod::tr(char const *,char const *,int) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
5: private: int QTextEngine::shapeTextWithHarfbuzzNG(struct QScriptItem const &,unsigned short const *,int,class QFontEngine *,class QVector<unsigned int> const &,bool,bool)const in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
6: private: void QTextEngine::shapeText(int)const in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
7: public: void QTextEngine::shape(int)const in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
8: private: void QTextLine::layout_helper(int) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
9: public: void QTextLayout::endLayout(void) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Gui.dll
10: private: int QWidgetLineControl::redoTextLayout(void)const in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
11: private: void QWidgetLineControl::updateDisplayText(bool) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
12: private: bool QWidgetLineControl::finishChange(int,bool,bool) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
13: private: void QWidgetLineControl::internalSetText(class QString const &,int,bool) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
14: protected: virtual void QAbstractSpinBox::timerEvent(class QTimerEvent *) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
15: public: void QSpinBox::setSuffix(class QString const &) in C:/Qt/5.12.0/msvc2017_64/bin/Qt5Widgets.dll
16: Ui_widget_eyeblink::setupUi in C:/git/eyeblink/build-blink-desktop_qt_5_12_0_msvc2017_64bit2-release/ui_gui.h:1751
17: EyeblinkGUI::EyeblinkGUI in C:/git/eyeblink/sources/eyeblinkgui.cpp:157
18: EyeblinkApplication::EyeblinkApplication in C:/git/eyeblink/sources/application.cpp:219
19: main in C:/git/eyeblink/sources/main.cpp:160
20: WinMain in C:/git/eyeblink/build-blink-Desktop_Qt_5_12_0_MSVC2017_64bit2-Release/release/eyeblink.exe
21: __scrt_common_main_seh in f:/dd/vctools/crt/vcstartup/src/startup/exe_common.inl:288
这可能是 heob 中的一个错误,因为 Deleaker 没有检测到这些。
相关文章:
- 如何在 Linux/MacOs 平台中检测到内存泄漏?
- 为什么 heob 在 QCreator 生成的代码中将这些检测为内存泄漏
- C++默认参数通过_CrtMemDifference屏蔽内存泄漏检测
- Valgrind检测到OpenGL内存泄漏
- 通用 Windows 平台上的内存泄漏检测
- 泄漏消毒剂检测泄漏
- Valgrind和Qemu-无法检测到内存泄漏
- 了解Microsoft的内存泄漏检测输出
- 通过附加到进程进行内存泄漏检测
- 检测到内存泄漏
- 地址清理器无法使用选项 -O 检测内存泄漏
- 如何在C++中编写一个小内存泄漏检测
- 为引用计数的智能指针检测内存泄漏的设计模式
- 如何检测窗口(gtk、qt等)应用程序上的内存泄漏
- CRT内存泄漏检测未检测到内存泄漏
- 如何在tbbmalloc中检测内存泄漏
- 检测到指针引用可能存在内存泄漏
- 在一个非常简单的程序中检测到内存泄漏.怎么办
- VC 2012 中的内存泄漏检测
- Valgrind 在 fclose() 处检测到内存泄漏