Net::SSL
はCrypt :: SSLeayの一部です。今日のバグ報告に取り組んでいるうちに、貧しい人々の何度も何度も気を散らしました。*
が出ました。例えばなぜNet :: SSLの逆参照タイプのコードが必要なのですか?
、Net::SSL::configure
を考える:私は事前5.8 Perlでその慣れていないですので
*$self->{ssl_version} = $ssl_version;
*$self->{ssl_debug} = $ssl_debug;
*$self->{ssl_arg} = $arg;
*$self->{ssl_peer_addr} = $arg->{PeerAddr};
*$self->{ssl_peer_port} = $arg->{PeerPort};
は、多分それはだが、私はちょうどLHSに*
を使用するための重要な理由があるかどうかを正確に特定することはできません。 *$self->{ssl_peer_port} = $arg->{PeerPort};
で十分ではないでしょうか?または、ここで何か深刻なことがありますか(たとえばlocal $_
対local *_
)?
私は混乱して、 '$ self - > {ssl_debug}'が型グロブとして扱われていると思いました。答えをありがとう。私が前に5.6を持ってきたのは、私が知らないものが分からないからです;-) –
@SinanÜnür接頭辞逆参照が先行するものよりも前にある優先順位の問題と考えてください。あるいは、 ' - >'をその左辺の周りに '$ {...} 'を置くように考えてください。 C言語で '* argv [0]'を読むとき、本当に '*(argv [0])'であるがPerlでは '$$ aref [0]'は '$ {$ aref} [0]'ではない '$ {$ aref [0]} '。 '*'を含む他のプレフィックスデレッファも最初に出ます。だから、あなたの表現は '$ {* $ self} {ssl_debug}'でした。おそらくあなたが野生でそれにチャレンジしたなら、状況を悪化させたかもしれません。 :) – tchrist