1

私はいくつかのサンプルコードを見ていますが、次の行が何をしているのかわかりません:

   fcgi_streambuf cin_fcgi_streambuf(request.in);
   fcgi_streambuf cout_fcgi_streambuf(request.out);
   fcgi_streambuf cerr_fcgi_streambuf(request.err);

私はACのバックグラウンドから来ていないので、構文は少し奇妙に見えます-各行は新しいオブジェクトを初期化する際に関数を呼び出していますが、少なくともそこに割り当てがあると思います. 例えば:

    fcgi_streambuf = cin_fcgi_streambuf(request.in);
    fcgi_streambuf = cout_fcgi_streambuf(request.out);
    fcgi_streambuf = cerr_fcgi_streambuf(request.err);

完全なサンプル コードは、http: //chriswu.me/blog/writing-hello-world-in-fcgi-with-c-plus-plus/にあります。

4

2 に答える 2

6

いいえ、各行は変数を定義しています。

   fcgi_streambuf cin_fcgi_streambuf( request.in );
// ^-type-------^ ^-name-----------^  ^-params-^

パラメータが class のコンストラクタに渡される場所fcgi_streambuf100% 正確ではありませんが、次のように考えると役立つ場合があります。

fcgi_streambuf cin_fcgi_streambuf = fcgi_streambuf( request.in );
于 2013-03-29T23:45:29.067 に答える
3

これらの行は、型の 3 つの変数を宣言しfcgi_streambuf、その型のコンストラクターを呼び出しています。

于 2013-03-29T23:45:30.033 に答える