Am 31.10.2016 um 23:02 schrieb Gavin Lambert:
On 1/11/2016 03:27, Edward Diener wrote:
I found the notation for the std_out, std_err, and std_in to be exactly the opposite of what I would expect. I would think std_out and std_err would use a '<' notation and std_in would use a '>' notation. But using the pipes was fairly straightforward. I found the naming in the tutorial a bit strange, where a bp::opstream is called 'in' and a bp::ipstream is called 'out'.
bp::std_out > stdout bp::std_out > "output.txt" bp::std_in < "input.txt"
These seem the right way around to me, and reminiscent of how they're used in a shell; just with the extra keyword in front. Pretend the keyword is the process name instead.
Having said that, due to the presence of the keyword, perhaps assignment would be a better syntax, similar to bp::args? eg:
bp::std_out = stdout bp::std_out = "output.txt" bp::std_in = "input.txt"
This is allowed syntax, as is bp::std_out(stdout). I personally like the < and > syntax very much, but for those who don't there are alternatives.