参照によって渡された別のオブジェクトで構築されるオブジェクトがあります。コンストラクターに渡されるオブジェクトは次のようになります。
HTTPServerResponse::HTTPServerResponse(Poco::Net::HTTPServerResponse &response)
私のラッパークラス(HTTPServerResponse
)response
はある時点で破棄されますが、それ自体も破棄されません。response
実際、私のクラスの外でも、破壊される可能性のある複数の(外部の)理由があります。
私が欲しいのはresponse
、その存在を確認するために他のメソッドを呼び出す前です。
私は試した:
if(!response) {...
どちらが生成されましたerror C2675: unary '!' : 'Poco::Net::HTTPServerResponse' does not define this operator or a conversion to a type acceptable to the predefined operator
; 当然、私も試しました:
if(response) {...
これも失敗しましたerror C2451: conditional expression of type 'Poco::Net::HTTPServerResponse' is illegal; No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
この混乱を修正するにはどうすればよいですか?