autoPtr代码求教
-
在学习autoPtr时看到autoPtrI.H中有这样一段代码不是很理解,下面这个是一个重载操作符吗?没有返回类型啊,重载的又是什么符号?return了一个函数声明?c++中好像没见过这种写法啊。
template<class T> inline Foam::autoPtr<T>::operator const T&() const { return operator()(); }
operator()()函数定义如下:
template<class T> inline T& Foam::autoPtr<T>::operator()() { if (!ptr_) { FatalErrorInFunction << "object of type " << typeid(T).name() << " is not allocated" << abort(FatalError); } return *ptr_; }
-
@羽之下 我发现一个规律,只要一发帖,自己马上就能找到眉目,不发帖问题两三天卡住不动
-
@羽之下 这貌似是一个类型转换函数,搜到了类似帖子https://bbs.csdn.net/topics/390537437