Size: a a a

2020 August 28

АК

Александр Караев... in pro.cxx
Побитый Кирпич
Ну вот тебе надо после конструирования чёнить с ним сделать и вернуть
судя по описанной выше задаче - не нужно
источник

ПК

Побитый Кирпич... in pro.cxx
Kirill
У меня и так C++17. Лишние конструкторы удалю
Мув конструктор может быть в принципе, тогда и до С++17 можно будет возвращать по значению
источник

K

Kirill in pro.cxx
Может быть глупый вопрос, но можно ли в каком либо стандарте использовать стринговые литералы как аргументы шаблонов? Если нет, то почему?
источник

p

pika42 in pro.cxx
Kirill
Может быть глупый вопрос, но можно ли в каком либо стандарте использовать стринговые литералы как аргументы шаблонов? Если нет, то почему?
В 20 можно
источник

K

Kirill in pro.cxx
pika42
В 20 можно
Значит ещё пару лет ждать пока в проде разрешат это использовать ) но хорошо что вообще добавили
источник

АК

Александр Караев... in pro.cxx
Kirill
Может быть глупый вопрос, но можно ли в каком либо стандарте использовать стринговые литералы как аргументы шаблонов? Если нет, то почему?
const char* можно давно, но литерал придётся выносить в переменную.
более интересно с C++20: https://godbolt.org/z/hzwckf
источник

K

Kirill in pro.cxx
Александр Караев
const char* можно давно, но литерал придётся выносить в переменную.
более интересно с C++20: https://godbolt.org/z/hzwckf
Выглядит круто, прям то что нужно
источник

Rn

Roman na in pro.cxx
Александр Караев
const char* можно давно, но литерал придётся выносить в переменную.
более интересно с C++20: https://godbolt.org/z/hzwckf
Только вот у нас есть компилятор-инвалид на который завязан весь тулинг, который(компилятор) почти сдох.
источник

Rn

Roman na in pro.cxx
и не подаёт признаков жизни уже наверное год, а может даже больше. Ну хоть спасает то, что какой-то добрый индус решил хоть огрызок концептов реализовать с сегфолтами на пару
источник

АК

Александр Караев... in pro.cxx
Roman na
Только вот у нас есть компилятор-инвалид на который завязан весь тулинг, который(компилятор) почти сдох.
мои соболезнования
источник

Rn

Roman na in pro.cxx
Александр Караев
мои соболезнования
ну а что поделать. Столман ведёт священную борьбу с экспортом аст из гцц, да и wasm/llvm-ir беки мёртвыми уже давно валяются
источник
2020 August 29

AT

Anatoly Tomilov in pro.cxx
std::vector::assign: All iterators, pointers and references to the elements of the container are invalidated. The past-the-end iterator is also invalidated.. То есть тот кусок памяти, который >= std::distance(first, last), который я зарезервирую std::vector::reserve не будет использован? Причём наверняка?
источник

AT

Anatoly Tomilov in pro.cxx
Или так нельзя трактовать?
источник

m

magras in pro.cxx
Anatoly Tomilov
std::vector::assign: All iterators, pointers and references to the elements of the container are invalidated. The past-the-end iterator is also invalidated.. То есть тот кусок памяти, который >= std::distance(first, last), который я зарезервирую std::vector::reserve не будет использован? Причём наверняка?
Думаю это связано с exception safety.
источник

AT

Anatoly Tomilov in pro.cxx
а вообще законно ли делать так: std::vector<int> v = {1, 2, 3}; int & one = v[0]; v.clear(); v.push_back(123); std::cout << one << std::endl;?
источник

ПК

Побитый Кирпич... in pro.cxx
Anatoly Tomilov
а вообще законно ли делать так: std::vector<int> v = {1, 2, 3}; int & one = v[0]; v.clear(); v.push_back(123); std::cout << one << std::endl;?
нет
источник

D

Danya in pro.cxx
Anatoly Tomilov
а вообще законно ли делать так: std::vector<int> v = {1, 2, 3}; int & one = v[0]; v.clear(); v.push_back(123); std::cout << one << std::endl;?
Нет
источник

AT

Anatoly Tomilov in pro.cxx
ну тогда понятно с предыдущим
источник

AT

Anatoly Tomilov in pro.cxx
там clear подразумевается 100%
источник

ПК

Побитый Кирпич... in pro.cxx
Anatoly Tomilov
там clear подразумевается 100%
Да, видимо это больше про лайфтаймы объектов, а не про память. То есть reserve будет задействован
источник