sinojelly / mockcpp

Two C/C++ testing tools, mockcpp and testngpp.
Apache License 2.0
66 stars 39 forks source link

MinGW delete mock对象会异常退出 #23

Closed sinojelly closed 3 years ago

sinojelly commented 3 years ago

` void testShouldSupportDeleteAMockObjectWhoMocksASimpleInterface() { MockObject mock;

  Base1* p = mock;

  delete p;

} `

[ RUN ] TestMockObject2::TestMockObject2::testShouldSupportDeleteAMockObjectWhoMocksASimpleInterface

MinGW 的 new/delete 行为,与其它有差异。 已经在 mem_checker/debug_new.cpp 中定义 NOT_USE_MEM_CHECKER 宏,避免 new/delete 重载导致问题。 还是遇到 delete mock对象出错。说明编译器确实在 delete 行为方面有差异。

sinojelly commented 3 years ago

MinGW可靠性差,做些单个文件的小项目也许凑合能用,但是稍微大点的项目,就会遇到很多问题。 比如 函数实现由头文件放到cpp,就链接不过;或者链接时提示 .a rename失败 等。 最后都放弃使用MinGW了。Win上开发,使用 VS 更靠谱。 此问题先关闭了。