int result;
string input = "Hello world!";
cin>>input;
future <vector <char> > dataOut;
future <vector <char> > dataErr;
result = bp::system(args, bp::std_in < input, bp::std_out > dataOut, bp::std_err > dataErr, boost::process::windows::hide);
bool status = false;
if (result == ERROR_SUCCESS) {
status = true;
}
auto out = dataOut.get();
auto err = dataErr.get();
когда input = "Hello world!" моя простая программа, которую я запускаю
string s;
cin>>s;
cout<<s<<endl;
, создает пустой файл с именем "Hello world!" и пусто Но если я запускаю программу
cout<<"Hello world!"<<endl;
, которая работает хорошо и out.get () == "Привет, мир!"
Я понятия не имею, что за странное поведение. ОС - Windows.