
Igor
17.10.2018
14:36:58
внезапно вброс
~X() = 0 = default;
и наоборот,
~X() = default = 0;

Alexey
17.10.2018
14:38:45

Дед Пегас
17.10.2018
14:38:51

Kitsu
17.10.2018
14:38:57

Google

Igor
17.10.2018
14:39:12

Alexey
17.10.2018
14:39:25
Фух

Аттрибутивно-ассоциативный ряд
17.10.2018
14:40:07

Igor
17.10.2018
14:40:14
возникла на волне обсуждения "а почему язык вообще позволяет ~X()=0; и молча срёт в тапки если ты забыл сделать определение чисто-виртуального деструктора"

Alexey
17.10.2018
14:40:19

Kitsu
17.10.2018
14:41:21

Igor
17.10.2018
14:41:25

Kitsu
17.10.2018
14:41:27
но выше правильно ответили, что ничего хорошего не будет

Alexey
17.10.2018
14:42:56

Igor
17.10.2018
14:44:15
А зачем и =0, и =defaul
если не делать ~Base() {}, то наследник от Base при уничтожении вызовет несуществующий деструктор, и откроются ворота в адъ

Alexey
17.10.2018
14:45:52
=default ворота не закрывает?

Igor
17.10.2018
14:46:57
ну вот как будто бы да, ворота можно закрыть с помощью =default, потому что по сути именно дефолтную реализацию сейчас и приходится писать руками

Alexey
17.10.2018
14:47:47
А зачем ещё и =0?

Google

Igor
17.10.2018
14:48:12
затем что нужен pure virtual class :)

Alexey
17.10.2018
14:52:27
Сделай protected конструктор

Igor
17.10.2018
14:54:22
да-да, когда-то я приходил с такой идеей на SO)
https://stackoverflow.com/questions/33299273/pure-virtual-destructor-vs-protected-constructor-virtual-dtor

Spoonson
17.10.2018
14:54:38

Igor
17.10.2018
14:55:17
"At a more conceptual level, if you are trying to make a class abstract, then make it abstract. "

Alexander
17.10.2018
14:56:52

Spoonson
17.10.2018
14:58:06
или это к тому что из наследника сломать можно что угодно?

Alexey
17.10.2018
15:00:06
А зачем нужен чисто виртуальный класс, если из виртуального там только деструктор?

Alexander
17.10.2018
15:05:03

Igor
17.10.2018
15:07:17

Alexey
17.10.2018
15:12:17
и есть
вторая попытка ?

Igor
17.10.2018
15:17:31

Kirill
17.10.2018
16:37:53
Зачм нужно '''std: :auto_ptr<T>'''?

Alex Фэils?︙
17.10.2018
16:38:51
не нужно уже, его выкинули на мороз, используй std::unique_ptr

Matwey
17.10.2018
16:39:27
unique_ptr это умный указатель

Google

Matwey
17.10.2018
16:39:44
позволяет не забыть освободить выделенную руками память

Alexen
17.10.2018
16:39:49
не плохая, а единственно возможная на тот момент

Matwey
17.10.2018
16:40:16

Alexen
17.10.2018
16:41:36
но и плохой тоже
она нейтрайльная, да имеет свои недостатки, как и прочие смарт-указатели в С++.

Alex Фэils?︙
17.10.2018
16:46:47
ну, уник-птр пофиксил недостатки auto_ptr'а

Alexen
17.10.2018
16:46:54
и как бы уже без разницы ибо устарел этот тип и удалён

Alex Фэils?︙
17.10.2018
16:47:48
unique_ptr<T[]>

Ruslan
17.10.2018
16:51:53

Alex Фэils?︙
17.10.2018
16:52:08

Ruslan
17.10.2018
16:52:53

Alex Фэils?︙
17.10.2018
16:53:13

Ruslan
17.10.2018
16:53:30
Спасибо

Alexen
17.10.2018
16:59:27

Alex Фэils?︙
17.10.2018
16:59:50
давай закинем DR/пропосал на stdcpp.ru

Alexen
17.10.2018
17:00:22
я пока не знаю как унифицированно это сделать

Evgeniy
17.10.2018
17:01:20

Alexen
17.10.2018
17:01:29
можно initialized_list

Alex Фэils?︙
17.10.2018
17:04:39

Google

Alexen
17.10.2018
17:05:12
в целом да

Evgeniy
17.10.2018
17:09:10

Kirill
17.10.2018
17:09:51
Какой вы компилятор используете?

Anton
17.10.2018
17:10:20

Alexander
17.10.2018
17:11:36

Alex
17.10.2018
17:11:57
clang

Alexen
17.10.2018
17:14:12
clang, gcc

Ilia
17.10.2018
17:15:47

Kitsu
17.10.2018
17:17:40
gcc,clang,msvc,icc
о, всегда было любопытно как (качественно) работает icc
можешь в двух словах рассказать?

Alexander
17.10.2018
17:18:29

Ruslan
17.10.2018
17:18:43

Kitsu
17.10.2018
17:19:10

Ruslan
17.10.2018
17:19:12

Alexander
17.10.2018
17:19:41
но gcc/icc лучше шланга/msvc

Kitsu
17.10.2018
17:20:12

Ruslan
17.10.2018
17:20:27
Все не так однозначно

Alexander
17.10.2018
17:20:27

Kitsu
17.10.2018
17:20:32

Alexander
17.10.2018
17:21:05
кого интресует - ищите бенчмарки ч чате. я кидал

Google

Ruslan
17.10.2018
17:21:12
Интеловский компилятор без интеловских либ, тулзов и ПРОЦА мало пользы несет :)
А вот все в куче если, то уже есть смысл

Alexander
17.10.2018
17:21:31

Ruslan
17.10.2018
17:21:47
Ничего не естественно. Кому-то критично под АРМ
или под PowerPC