我正在用 C++ 编写一个库,并且有一些可与模块一起使用的函数。一个示例如下所示:
void connect(Module *a, Module *b);
问题是,如果函数也接受引用,有时会很方便(一些模块可能分配在堆栈上,一些在堆上,所有 &s 和 *s 很快就会变得无聊和混乱)。
现在我有内联函数,它接受引用,将它们转换为指针并调用原始函数。
inline void connect(Module &a, Module &b){
connect(&a, &b);
}
我不太喜欢这个解决方案,因为对于更多功能,它会产生大量代码来编写、读取、编译......
正在考虑的另一件事是添加Module::operator Module *()
将返回的内容this
。
您对此有何看法?我错过了史诗般的失败的可能性吗?
谢谢。