
arisu
03.03.2017
20:01:35
но ведь модификаторы auto и static уже указаны
зачем указывать это еще и оператором?

Sergey
03.03.2017
20:01:57

Google

arisu
03.03.2017
20:02:25

Aragaer
03.03.2017
20:02:40
если я хочу, чтобы компилятор за меня что-то додумывал, я беру перл. От С я хочу предсказуемости и подчинения

Sergey
03.03.2017
20:02:41

arisu
03.03.2017
20:02:56
потому что тип доступа к этим полям уже контролируется модификатором static
один из операторов лишний

Sergey
03.03.2017
20:03:20
всё равно не понял..

arisu
03.03.2017
20:04:13
просто не укладывается у тебя в голове это
смотри

Sergey
03.03.2017
20:04:24

Марк
03.03.2017
20:04:39
Бля, погрепал проект. Чет не могу найти структ с ифом. Сука, доверчиво послушал одного плюсовика, который говорил, что это какая хуйня. Сорян

arisu
03.03.2017
20:04:44
class A
{
public:
static int s;
int m;
}
а теперь смотри.
A var = a;

Google

arisu
03.03.2017
20:05:14
var::m; // ошибка компиляции

Aragaer
03.03.2017
20:05:21
Короче, есть три оператора, они делают примерно одно и то же, из контекста компилятор мог бы догадаться, какой нужен.

arisu
03.03.2017
20:05:27
A.s; // ошибка компиляции
а теперь ответь, зачем два оператора для обращения к одному пространству имен?

Aragaer
03.03.2017
20:06:13
я думаю, можно отправить это предложение на рассмотрение в комитет, который занимается стандартами и может потом они лишнее выпилят

arisu
03.03.2017
20:06:21
если тип обращения уже вычислим на этапе компиляции?

Aragaer
03.03.2017
20:06:24
странно, что до сих пор не выпилили, да?

arisu
03.03.2017
20:06:53
комитету глубоко похуй, они вот триграммы недавно только выпилили
интересно, как там у немцев, наверное теперь не будут писать на крестах
клавиатур-то не было и нет!

Sergey
03.03.2017
20:07:15
а я-то понять не мог..
ответ прост: не выпиливают потому что legacy
и потому что explicit
)

Aragaer
03.03.2017
20:07:56
можно написать свой компилятор, который будет иметь расширение стандарта в виде (выставленного по умолчанию) флажка --auto-guess-struct-access-operator
опять же, почему-то никто его не сделал

arisu
03.03.2017
20:08:11
давай еще
Type* a, b;
какой тип имеет b?

Google

Марк
03.03.2017
20:08:27
Народ, поясните простую штуку про Си. Зачем постоянно выдрачивать указатели? В стиле "struct a *application;". Я вот этого реально всосать не могу

Aragaer
03.03.2017
20:08:35
Type конечно
ты звездочку не там написал 8)

arisu
03.03.2017
20:08:59
почему тогда разрешено ставить звездочку в любое место?

Aragaer
03.03.2017
20:09:04
в дурном шарпе тип у b был бы Type *

Sergey
03.03.2017
20:09:10

arisu
03.03.2017
20:09:23
настолько неочевидный кусок кода

Sergey
03.03.2017
20:09:25

Марк
03.03.2017
20:10:01

Aragaer
03.03.2017
20:10:03
потому что у struct a размер черт знает какой, а у struct a * размер 8 байт. Ну или 4, если очень хочется.
ну да

Sergey
03.03.2017
20:10:18

Aragaer
03.03.2017
20:10:31
указатель это просто адрес в памяти

arisu
03.03.2017
20:10:54
кстати

Алексей Ayaye :)
03.03.2017
20:10:57

Марк
03.03.2017
20:11:01
То есть, вот той конструкцией что я говорю?

arisu
03.03.2017
20:11:02
а в сях тоже ввели auto?
или туда дедукцию типов не завезли?

Sergey
03.03.2017
20:11:17

Google

Sergey
03.03.2017
20:12:00
ну
auto в си это "автоматическая переменная"
"которая уничтожится к концу скоупа"

Aragaer
03.03.2017
20:12:20
в C auto означает что-то другое и это что-то неюзаемое

arisu
03.03.2017
20:12:23
ну это я знаю

Aragaer
03.03.2017
20:12:24
вроде бы

arisu
03.03.2017
20:12:27
auto это класс памяти

Sergey
03.03.2017
20:12:27

Артемий
03.03.2017
20:12:38
Пытаюсь подключить к Django поддержку channels
Вроде настроил все по госту, но при попытке manage.py runworker происходит такая ошибка
http://pastebin.com/HBuBYxLU

Aragaer
03.03.2017
20:12:40
вместо дедукции типов есть typeof, мне хватает 8)

Admin
ERROR: S client not available

Sergey
03.03.2017
20:12:45
в c++ тоже самое было, что и в си
никто не юзал, заменили на вывод типов

Артемий
03.03.2017
20:12:47
Сами настройки
http://pastebin.com/hebGBPbn

Sergey
03.03.2017
20:12:55

Артемий
03.03.2017
20:13:14
Может кто объяснить что я упустил?)

Aragaer
03.03.2017
20:13:29
без шаблонов дедукция не особо сильно нужна, а в макросах мне typeof хватит 8)
auto незаменим, когда лень писать длиннющий тип какого-то специализированного итератора

arisu
03.03.2017
20:15:15
вывод типов тоже можно было бы повесить на компилятор
раз уж он все равно есть
и таки комитет додумался

Google

arisu
03.03.2017
20:15:28
... к 2011 году

Aragaer
03.03.2017
20:15:43
нет, вывода типов там нету кажись. Есть проверка эквивалентности и все
вот что жутко не люблю в плюсах - запрет на неявное приведение void *

arisu
03.03.2017
20:16:27
а вот скажите еще, господа крестовики
кому, мать его, в этом мире сдалось частичное разрушение?

Aragaer
03.03.2017
20:16:59
эээ
первый раз слышу о таком ужасе 8)

arisu
03.03.2017
20:17:10
это когда деструктор унаследованного класса уже выполнен, но деструктор базового - еще нет?

Алексей Ayaye :)
03.03.2017
20:17:32
и вылетело исключение? :)

Проксимов
03.03.2017
20:17:39
Алё, заканчивайте про свои плюсы, мозги растекаются. Это чат по питону или как?

arisu
03.03.2017
20:17:43

Aragaer
03.03.2017
20:18:01
не-не, про плюсы не ко мне! 8)

Sergey
03.03.2017
20:18:08

arisu
03.03.2017
20:18:08
а если привести объект к базовому типу, а его деструктор невиртуальный - то получится наоборот

Sergey
03.03.2017
20:18:11
и когда это?
так это не частичное разрушение

Алексей Ayaye :)
03.03.2017
20:18:29

arisu
03.03.2017
20:18:39
останутся кусочки унаследованного класса, а базовый будет разрушен
и блять
это поведение можно вычислить на этапе компиляции

Sergey
03.03.2017
20:19:12
это динамическая диспетчеризация

arisu
03.03.2017
20:19:40
можно просто сделать деструкторы виртуальными принципиально