【发布时间】:2017-10-15 02:20:07
【问题描述】:
我想检查我的类的两个实例是否相等(在 C++ 中),类中没有指针。我知道我需要覆盖 = 运算符并手动检查所有字段。我知道那个解决方案。问题是我在班上有大约 100 名成员,我想为许多类似规模的班级做这件事。
我的问题是是否有办法将其模板化?这可能吗?我可以使用速度。
【问题讨论】:
-
(您想覆盖
==运算符。)这些类的相似程度如何?可以考虑继承。也许重新考虑你的方法,因为 100 名成员通常是可以避免的(并非总是如此)。 -
C++ 不支持反射。您将需要一些预处理器辅助解决方案,例如参见stackoverflow.com/questions/19059157/…
-
如果成员都是POD,可以使用
memcmp。否则就没有这么大的课程。也许是设计上的改变。 -
为什么这个标记为velocity
标签: c++ c++11 templates visual-c++ velocity