Size: a a a

2020 October 22

A

Alex in pro.cxx
Так можно писать? Ворнингов или других проблем не будет?

void f() {}
void g()
{
  return f();
}
источник

VS

Vladimir Suisei in pro.cxx
Ilia Zviagin
Да, можно через termcap или как его там...
terminfo, но это же все равно винда! Можно накатить мингв (под него есть нкурсес) , но ради такой задачи совершенно не за чем. В винапи есть же способ курсор двигать, ему этого хватит
источник

IZ

Ilia Zviagin in pro.cxx
Vladimir Suisei
terminfo, но это же все равно винда! Можно накатить мингв (под него есть нкурсес) , но ради такой задачи совершенно не за чем. В винапи есть же способ курсор двигать, ему этого хватит
О! Точно, оно
источник

..

. . in pro.cxx
Ilia Zviagin
Нет, это сделать невозможно. Весь ввод-вывод с консолью работает в режиме телетайпа. Печать только вперёд.
Ввод в последней точке печати.

ЕСЛИ тебе надо интеллектуально работать с экраном в текстовом режиме, тебе надо использовать нестандартные библиотеки, например, NCurses.
хорошо, спасибо за ответ. я просто код написал (домашнее задание), но решил заморочится и тут в итоге узнал, что так сделать нельзя
источник

IZ

Ilia Zviagin in pro.cxx
. .
хорошо, спасибо за ответ. я просто код написал (домашнее задание), но решил заморочится и тут в итоге узнал, что так сделать нельзя
Для учебного задания это 100% оверкил
источник

VS

Vladimir Suisei in pro.cxx
Ilia Zviagin
Нет, это сделать невозможно. Весь ввод-вывод с консолью работает в режиме телетайпа. Печать только вперёд.
Ввод в последней точке печати.

ЕСЛИ тебе надо интеллектуально работать с экраном в текстовом режиме, тебе надо использовать нестандартные библиотеки, например, NCurses.
Если бы было нельзя, понятия TUI бы не существовало
источник

VS

Vladimir Suisei in pro.cxx
Да блин, если бы было нельзя, то даже стереть бы символ было нельзя, камон!
источник

IZ

Ilia Zviagin in pro.cxx
Vladimir Suisei
Если бы было нельзя, понятия TUI бы не существовало
Нельзя -- это нельзя на С++ стандартного разлива.
источник

VS

Vladimir Suisei in pro.cxx
Ilia Zviagin
Нельзя -- это нельзя на С++ стандартного разлива.
А, ну так то там мнооого чего нельзя)
источник

m

magras in pro.cxx
Alex
Так можно писать? Ворнингов или других проблем не будет?

void f() {}
void g()
{
  return f();
}
По-моему такое можно только в шаблонном коде, где void будет спрятан под T.
источник

A

Alex in pro.cxx
на годболт проверил - gcc и clang не возразили, но это не даёт 100% уверенности в успехе. А так, конечно, мне это для шаблонного кода и нужно.
источник

ПК

Побитый Кирпич... in pro.cxx
magras
По-моему такое можно только в шаблонном коде, где void будет спрятан под T.
не, в обычном тоже можно
источник

NP

Nikita Provotorov in pro.cxx
Alex
Так можно писать? Ворнингов или других проблем не будет?

void f() {}
void g()
{
  return f();
}
return (void)f(); точно катит, даже в конструкторе
источник

m

magras in pro.cxx
Да, видимо я не прав. Я пытался вспомнить специальное правило для шаблонов. Видимо оно позволяет "инстанцировать" void: https://godbolt.org/z/vM3hc6
источник

A

Alex in pro.cxx
Спасибо за подтверждение валидности моего кода
источник

VS

Vlad Serebrennikov in pro.cxx
Danya
А где про это можно почитать?
источник

D

Danya in pro.cxx
Спасибо
источник

VS

Vlad Serebrennikov in pro.cxx
Danya
Спасибо
добавил p2028
надо бы самому тоже почитать
источник

AT

Anatoly Tomilov in pro.cxx
Есть какой-то запрет на то, что move assignment operator std::vector был бы реализован через swap?  https://wandbox.org/permlink/2hJxXfTWHrB7Irvi
источник

ПК

Побитый Кирпич... in pro.cxx
реализация мува очевидно unspecified
источник