增强UTF的命令行参数unit_test_main
Command line arguments to Boost UTF unit_test_main
我有自己的Boost Test Runner,我将参数传递给unit_test_main
,如下所示:
char *myargs[] = {"", "--log_level=test_suite", "report_level=detailed", "output_format=xml", "--run_test=my_manual_test_suite1,my_manual_test_suite2"};
测试套件被拾取,测试用例被执行。然而,在我的程序执行结束时,我得到了内存损坏。有什么原因吗?
我的测试运行器是一个单独的cpp文件,它容纳了所有的测试用例和unit_test_main
。
编辑:我忘了添加,如果我从程序外部传递参数,则不会损坏。这太奇怪了
你能分享更多的代码吗?我想看看在本地传递实参与从程序外部传递实参有什么不同。
编辑:好的,我想我明白问题了。当您从外部传入参数时,它们将按顺序排列。例如,假设你调用test.exe --log_level=all --run_test=mt1
。例如,第一个参数的地址是0x10000。然后下一个参数--log_level=all
的地址从0x10009开始,以此类推。当你自己把argv串起来时,情况就不是这样了。因此,我的建议是按照上面的顺序放置参数,并尝试一下。
相关文章:
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 代码在main()中运行,但在函数中出现错误
- 当我在main中声明了我的2d数组时,为什么我的程序会退出
- QML:修改在不同QML文件(而非main.QML)中定义的子对象的属性
- 不确定要在我的main中放入什么才能使我的代码正常工作
- 函数是否可以访问传递给main()的参数
- 在main()之外初始化std::vector会导致性能下降(多线程)
- 我的 int main() 中出现堆栈溢出错误
- 如何使用 Google Test 向测试添加元数据 / 如何将数据从 Google Test 发送到 TestEven
- C++变量名(可以将 main 声明为变量,但对于其他函数名称则不然)
- 当我尝试在 Main 中调用插入函数时,它不是取数字?
- Boost.TEST with CLion: "Test framework quit unexpectedly"
- File.cpp.o:OpenPose 标志 CMakeFiles/.. 的多重定义/main.cpp.o:首先在这里定
- 为什么类和 main() 函数中也有动态内存分配
- 在 main.cpp 的上下文中找不到目录(带有 CMake 的快板)
- 我想在 Main 中用 C++ 调用其他类中的一个类,但我做不到
- "main"函数堆栈中的对象在第一个任务运行时被覆盖 (FreeRTOS)
- 为什么 'main' 函数中的局部 int 变量会自动初始化?
- Boost.test cannot find main
- 线程"main" java.lang.UnsatisfiedLinkError: undefined symbol: test