@ProCxx

Страница 195 из 2477
Aldar
27.05.2016
21:48:40
как работает функция std::move?

Andrei
27.05.2016
21:48:40
и является standart layout type

Aldar
27.05.2016
21:48:56
что такое perfect forwarding?

Andrei
27.05.2016
21:49:01
до 11 плюсов по другому определялось.

Google
Andrei
27.05.2016
21:49:38
trivial это значит что он

trivially copyable

и trvially constructible

что в свою очередь значит, нет юзер провайдед конструктора

нет виртуальных функций

Aldar
27.05.2016
21:50:32
trivially constructible это значит дефолтный конструктор есть?

Andrei
27.05.2016
21:50:41
нет виртуальных бейз классов

Aldar
27.05.2016
21:50:49
trivially copyable значит можноо тупо память скопировать?

Andrei
27.05.2016
21:50:55
Полегче

Andrei
27.05.2016
21:51:02
НЕТ!

Alex Фэils?︙
27.05.2016
21:51:10
Я блин 4 дня уже не спал

Google
Andrei
27.05.2016
21:51:13
Да
Нет!

Alex Фэils?︙
27.05.2016
21:51:32
Нет!
там еще куча было

Andrei
27.05.2016
21:51:44
1) нет пользовательского конструктора

Alex Фэils?︙
27.05.2016
21:51:45
Нет констр клпирования

Юзеоа

Andrei
27.05.2016
21:51:54
2) нет виртуальных мемберов

3) нет виртуального наследования

Aldar
27.05.2016
21:52:16
виртуальное наследование ещё может добавить скрытые поля

Andrei
27.05.2016
21:52:21
4) все ПРЯМЫЕ предки тривиал констрактибл

Aldar
27.05.2016
21:52:31
и виртуальная функция тоже добавляет указатель)

Andrei
27.05.2016
21:52:35
5) все нестатические слены тривиал констрактибл

6) добавилось в 11

у типа нет нестатических членов с дефолтными инициализаторами

Alex Фэils?︙
27.05.2016
21:53:22
5) все нестатические слены тривиал констрактибл
Ты мне скажи,тчем те не понравилось утверждение, что все типы языка Си - pod'ы?

Andrei
27.05.2016
21:54:13
Тупо типы из языка Си
тут ты скорее сказал pod = а не pod >=

Alex Фэils?︙
27.05.2016
21:54:27
Да

А типы языка си - это подмножество подов

Andrei
27.05.2016
21:54:57
не берусь сказать сходу, но видимо, да.

Alex Фэils?︙
27.05.2016
21:54:57
Все типы си - подыЮ но не все поды - типы как в си

Google
Alex Фэils?︙
27.05.2016
21:55:17
не берусь сказать сходу, но видимо, да.
Надо по чек-листу проверить

кстати, в гцц в си-части можно прикручивать что-то типа деструкторов

Andrei
27.05.2016
21:55:45
чем make_shared лучше чем обычное создание?
опять же мейерса, несколько new и все дела

как работает функция std::move?
тупо статик каст к t&&

Alex Фэils?︙
27.05.2016
21:56:18
опять же мейерса, несколько new и все дела
в общем, как пройду аттестация на кафедре - дочиьаю его книгу

Andrei
27.05.2016
21:56:48
Aldar
27.05.2016
21:57:49
как работает dynamic_cast?

и когда он работает, когда не работает?

Какие вы знаете типа кастов в С++?

Andrei
27.05.2016
21:59:40
это получше вопросы

про pod вопросы на знание стандарта

Aldar
27.05.2016
22:01:41
как shared_ptr работает с иерархиями наследования?

Aldar
27.05.2016
22:03:27
Какой порядок создания и разрушения объекта в С++?

Что такое список инициализации и зачем он нужен?

ключевое слово const, как оно применяется в С++?

Andrei
27.05.2016
22:05:29
у shared_ptr есть один конструктор забавный

aliasing конструктор

Alex Фэils?︙
27.05.2016
22:44:47
у shared_ptr есть один конструктор забавный
Это про него была статья на хабре? (Про скрытый конструктор shared_ptr)

Andrei
27.05.2016
22:45:10
Он не скрытый, просто о нём редко говорят.

Aldar
27.05.2016
22:45:30
https://www.youtube.com/watch?v=1OEu9C51K2A

Google
Aldar
27.05.2016
22:45:51
Страуструп рекомендует юзать простые указатели если не собираешься менять владение

Aldar
27.05.2016
22:46:59
Отсюда следует что нужно постоянно думать про овнершип и не переживёт ли юзер владельца

Andrei
27.05.2016
22:47:50
Если в этом есть сомненеие тогда shared_ptr

Aldar
27.05.2016
22:48:43
добавляет лишний счётчик

то о чём я говорил, при использовании С++ в любом случае надо думать о памяти

даже если есть умные указатели

Nikolay добряш
27.05.2016
22:51:23
А там еще не сделали гэрбейч коллектор

Aldar
27.05.2016
22:51:26
При этом всё равно раст будет безопаснее

Admin
ERROR: S client not available

Aldar
27.05.2016
22:51:51
потому что проверяет всё на уровне типов и компилятора, как раз то к чему стремиться монструозный С++

Andrei
27.05.2016
23:01:03
Блин.

Нет.

Господи

Чудес не бывает.

Раст просто гвоздями прибивает лайфтайм объекта в куче к объекту стека.

И всё.

Раст просто сужает твои возможности

никто не запрещает тебе на плюсах писать точно так же.

Google
Andrei
27.05.2016
23:09:38
Причем, я например так и делал.

И на работе

писал code guideline

для всей команды

где одно из правил было не использовать shared_ptr

потому что они размывают владение

Только unique

Aldar
27.05.2016
23:11:10
omg как без shared_ptr то обходитесь?

Andrei
27.05.2016
23:11:39
по секрету

так же как все топовые фирмы которые пишут критически важный софт на плюсах

никто не будет в серверном коде более\менее серьёзным использовать shared_ptr

Aldar
27.05.2016
23:12:52
постоянно передаёте unique_ptr и возвращаете?

grinchfox
27.05.2016
23:13:11
это наркомания

Aldar
27.05.2016
23:13:35
не упоминай про вещества

Andrei
27.05.2016
23:13:36
Куда передаем и возвращаем?

grinchfox
27.05.2016
23:13:44
ну тоесть не обязательно раскидывать на право и на лево lock free структуры и безопасные указатели просто потому что можешь

таким образом можно просто на java или C# пересесть где все за тебя сделано, но без особой производительности

Andrei
27.05.2016
23:14:42
сравнение вообще не в тему

grinchfox
27.05.2016
23:14:48
ну ок

Aldar
27.05.2016
23:15:24
в джаве очень уродливые дженерики

Andrei
27.05.2016
23:15:53
В расте никакого отличия от плюсов нет

вместо shared_ptr там Rc

который разве что иммутабельные

Страница 195 из 2477