Значение по умолчанию CTRL + F10 , но это может быть переопределено. Место для нахождения, что текущие ярлыки - и изменяют их,
Tools
Customize...
Keyboard...
Шоу commands, содержащий:
Отладка. RunToCursor
или
Шоу T ools
O ptions
E nvironment
K eyboard [1 19]
commands, содержащий:
Отладка. RunToCursor
Проблема в том, что вы не должны писать во временный объект потока. Это:
std::ostream(coutbuf) << "blah";
работает не так, как ожидалось, поскольку левый аргумент для operator << ()
является r-значением. Однако все операторы, перегруженные как свободная функция, принимают неконстантную ссылку на поток в качестве своего левого аргумента:
std::ostream& operator<<(std::ostream&, ...);
Поскольку rvalue не привязывается к неконстантным ссылкам, их нельзя вызвать.
Я подозреваю, что ваша реализация std lib реализует <<
для const char *
как бесплатную функцию и, таким образом, должна вернуться к некоторым <<
, которые член std :: ostream
. Похоже, что в вашей реализации тот, кто выводит любой указатель как void *
.
Итог: не пытайтесь записывать во временные объекты потока.
Вы не можете использовать такой временный объект потока. Дайте имя временной переменной.
#include <iostream>
int main()
{
std::streambuf *coutbuf = std::cout.rdbuf();
std::ostream os(coutbuf);
os << "test" << ": writing to cout using a separate ostream." << std::endl;
return 0;
}