class File_ptr {
FILE* p;
public:
operator FILE*() { return p;}
};

(C++3版 p428)

このオペレータの意味がわかりません。
なんか戻り値ないのに、return p してるし。

これを呼び出すには、どうしたらいいのですうか?
あるいは、これが呼び出されるのは、どういう場合ですか?