我正在查看一些示例代码,无法解决以下几行的问题:
fcgi_streambuf cin_fcgi_streambuf(request.in);
fcgi_streambuf cout_fcgi_streambuf(request.out);
fcgi_streambuf cerr_fcgi_streambuf(request.err);
我不是来自c背景,所以语法看起来有点奇怪 - 每行都在初始化一个新对象时调用一个函数,但我希望至少有一个赋值。例如:
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/
答案 0 :(得分:6)
不,每一行都定义了一个变量。
fcgi_streambuf cin_fcgi_streambuf( request.in );
// ^-type-------^ ^-name-----------^ ^-params-^
将参数传递给类fcgi_streambuf
的构造函数。 虽然不是100%准确,但这样做可能会有所帮助:
fcgi_streambuf cin_fcgi_streambuf = fcgi_streambuf( request.in );
答案 1 :(得分:3)
这些行声明了fcgi_streambuf
类型的三个变量,并调用该类型的构造函数。