Aragaer
кстати да, через референс тоже ок
Maxim
const Her& her = Bar(); her.print();
по-моему не скомпилится, print же не константный
Anatoly
чтобы достичь полиморфного поведения необходимо вызывать методы либо через указатель , либо через ссылку на базу
Ivan
Ошибки компиляции
Anatoly
Ivan
Да, print не константный
Anatoly
тогда Bar b; Her& h = b; h.print();
Ivan
а теперь нам нужно всё это положить в вектор
Ivan
Всех потомков
Ivan
Какого типа шаблонный параметр вектора?
Aragaer
Bar other = Bar(); Her &h = other; //создадим на стеке h.print(); // ахахаха Her вызовится метод предка Her::print
Aragaer
так прокатило
Anatoly
либо std::vector<std:unique_ptr<Her» либо std::vector<std:shared_ptr<Her»
Vladislav
подумой :)
Подумол, у нас тут логово - реакт в соседнем сдан и пилят)
Vladislav
А в другом - плагины для атома клепают
Ivan
У нас С++03
Vladislav
У нас С++03
Зря-зря
Ivan
Мозговой штурм
Anatoly
У нас С++03
std::vector<Her*> и следить за памятью, либо возьмите из буста boost::shared_ptr
Ivan
Да, я не против руками следить
Alexey
Зря-зря
А как вообще переубедить на использование новых стандартов?(например, с с++11 на с++14)?
Anatoly
методично, показывая удобства привносимые новыми средствами языка
Maxim
иногда целевая платформа тупо не поддерживает свежие компили, которые поддерживают новый стандарт, насколько я понимаю
Anatoly
хотя, странно, что это надо кому-то доказывать
Alexey
методично, показывая удобства привносимые новыми средствами языка
"Сложно, усложняет код, не до конца поддерживается компиляторами, и так норм, используй qt"
Berkus
У нас С++03
перейти на c++17
Berkus
сначала проанализируйте какие вы компиляторы используете, дальше по обстоятельствам
Mikhail
У нас перешли, потому что использовали студию 2005 и код написанный на ней перестал проходить сертификацию внутреннюю по безопасности
Berkus
если они и правда выше ++03 не поддерживают то смысла дергаться нет
Alexey
скорее лид
Mikhail
Вот только после этого обновили компилятор
vladislav
Помимо фишек новых стандартов, что они дают, новые компиляторы содержат и новые баги. С старыми то ясно всё. Все баги найдены.
Mikhail
Ivan
http://ideone.com/xaWC2C вот так получается. Но так как там указатели, реальные объекты могут умереть. Как сделать, так чтобы в вектор копировались сами объекты а не указатели на них?
Ivan
То есть на стеке возможно использовать полиморфизм?
Anatoly
можно конечно лида начать методично тыкать в новые плюшки, прикинувшись ветошью "а я вот слышал о move семантике, прогнал тест с нашими копиконструкторами в старом и новом компиляторе и о...ел"
Ivan
Нет буста, есть только старый С++03
Ivan
Никак
Danil
методично, показывая удобства привносимые новыми средствами языка
А заказчику как это объяснить, у тебя огромный проект, и все работает, а переписать все это куча времени и потенциально регресс
Ivan
Я очень расстроился
Anatoly
это задел на будущее, это никак заказчика не должно касаться
vladislav
если согласовано с руководством, то можно в день по чайной ложке перепиливать
vladislav
@kenny1847 но у вас же, на сколько я знаю, просто нету возможности перейти на новый gcc
Nikita
Проще взращивать, если компания свой продукт делает.
vladislav
Есть
а в чём тогда проблема?
серёжа
Есть
А у нас нет :с
vladislav
вова рассказывал про какую-то проблему с пространствами имён
Nikita
У старых хозяев раньше при слове "рефакторинг" было выражение лица, будто что-то украли
vladislav
Nikita
Потом их купила рыба покрупнее
Danil
а в чём тогда проблема?
В том, что это по сути переписать все
vladislav
лол, нормальный подход
Danil
Так что это лишь мечты
Danil
Мне не нравятся дот нет коллекции
Danil
Уродство
Ivan
Вы же профессионал, не могли сразу написать правильно что ли? За что мы вам платили деньги?
Danil
С новыми плюсами можно выкинуть кучу кода
vladislav
С новыми плюсами можно выкинуть кучу кода
вы бы ещё буст подцепили и ваши миллионы строк кода превратились бы в десятки тысяч :)
vladislav
ну у них это обоснованное решение, я просто шучу
Berkus
А код,кроме вас, вообще перестал понимать кто-либо)
я добавил boost.parameters и код стал понятнее на порядок
Anatoly
получается я из тех немногих, которые определяют самостоятельно что использовать и на что переходить
vladislav
Ну у нас тоже достаточно свободный выбор инструментов
vladislav
ты в госкомпании что ли работаешь?