如何自定义 C++ 类和结构的 STAssertEquals 输出?

Posted

技术标签:

【中文标题】如何自定义 C++ 类和结构的 STAssertEquals 输出?【英文标题】:How can I customize STAssertEquals output for C++ classes and structs? 【发布时间】:2012-07-02 04:12:28 【问题描述】:

我正在使用 OCUnit 在 XCode 4.3.2 中编写测试用例。我想将 C++ 类和结构与STAssertEquals 进行比较,但不幸的是,STAssertEquals 在测试失败时默认打印对象引用。

如何为 C++ 中的用户定义类型自定义 STAssertEquals 的输出?

我尝试在 std::ostream 上为我的对象(std::ostream& operator<<(std::ostream& stream, const MyObject& obj);)实现 operator<<,但这似乎不会改变输出。

【问题讨论】:

【参考方案1】:

添加将 C++ 类或结构包装在 Objective-C 对象中的代码。然后实现一个-isEqual: 方法来检查是否相等。

【讨论】:

以上是关于如何自定义 C++ 类和结构的 STAssertEquals 输出?的主要内容,如果未能解决你的问题,请参考以下文章

C++类和对象

学习要点自定义类和结构

C++类和对象

用于类和结构之间交互的 C++ 语法

C++类和对象

C++类和对象