相关疑难解决方法(0)

在assert中添加自定义消息?

有没有办法添加或编辑断言抛出的消息?我想用类似的东西

assert(a == b, "A must be equal to B");
Run Code Online (Sandbox Code Playgroud)

然后,编译器添加,时间等...

可能吗?

c++ assert

114
推荐指数
5
解决办法
6万
查看次数

向C语言编程人员展示您的共同程序员在类中尚未实现某些方法的方法

在以下情况下可以使用哪些方法

  • 你通过一个小的C++项目与几个(例如1-3个)其他程序员一起工作,你使用一个存储库
  • 你创建一个类,声明它的方法
  • 你还没有时间实现所有方法
  • 你不希望其他程序员使用你的代码(因为它还没有实现); 或者不想使用尚未实现的代码部分
  • 你没有时间/可能告诉你同事所有这些尚未实现的东西
  • 当你的同事使用你尚未实现的代码时,你希望他们立即意识到他们不应该使用它 - 如果他们收到错误你不想让他们想知道什么是错的,搜索潜在的错误等等.

c++ error-handling compiler-errors notimplementedexception

9
推荐指数
6
解决办法
2241
查看次数

自定义`assert`宏,支持逗号和错误消息

我想创建在中定义的assert宏的自定义版本,<cassert>在断言失败时显示错误消息。


所需用法:

custom_assert(AClass<T1, T2>::aBoolMethod(), "aBoolMethod must be true");


测试实现有缺陷:

#define custom_assert(mCondition, mMessage) ...
// This fails because mCondition may have commas in it

#define custom_assert(..., mMessage)
// Not sure about this either - mMessage may be an expression containing commas
// as well
Run Code Online (Sandbox Code Playgroud)

如何正确实现一个自定义断言,该自定义断言将布尔表达式(可能带有逗号)作为第一个参数,并将字符串表达式(可能带有逗号)作为第二个参数?

还是有一种不使用宏来实现断言的方法?

c++ macros assert c++11

5
推荐指数
1
解决办法
1968
查看次数

如何退出安卓 NDK 应用程序

我正在像this answer一样在C++中使用Android NDK制作自己的断言宏,但是有一个std::exit功能无法在Android中使用。有没有像std::exitAndroid一样的替代品?

c++ exit android-ndk

4
推荐指数
1
解决办法
3200
查看次数