Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 448 449 [450] 451 452 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#6736
,
|
|
|
|
Цитата korvin @ Не знаю чего общего, у тренера спроси, почему он вдруг отождествляет паскалевский ![]() ![]() procedure func(const x : Integer); с сишным ![]() ![]() void func(const int &x); когда это (с одним отличием) ![]() ![]() void func(int &const x); Он не отождествляет. Он(как мне кажется) спрашивает, зачем и почему там так. В С++ ты можешь сделать итак и этак - это к делу не относится. |
|
Сообщ.
#6737
,
|
|
|
|
Цитата Radagast @ чтобы знать, является ли он потоко-безопастным http://herbsutter.com/2013/01/01/video-you...st-and-mutable/ Спасибо, я предпочитаю CSP-style concurrency. |
|
Сообщ.
#6738
,
|
|
|
|
Цитата korvin @ я предпочитаю CSP-style concurrency. Где ты его |
|
Сообщ.
#6739
,
|
|
|
|
Цитата D_KEY @ Зачем возмущаться? Ты меня пытался убедить, что там меняется не значение, а биндинг переменной. Так вот. Это не соответствует действительности именно с точки зрения семантики и спецификации языка. То, что по причине отсутствия в языке некоторых средств изменение значение примитивного типа выглядит как изменения биндинга переменной - вопрос уже другой. Наоборот, именно как оно выглядит для программиста и важно, ведь программисту писать код на этом безобразии =) |
|
Сообщ.
#6740
,
|
|
|
|
Цитата korvin @ Наоборот, именно как оно выглядит для программиста Поскольку программисты читают доки, спеки и литературу по языку, который используют(а не перекладывают понятия из своих любимых языков на другие), то для них это выглядит как изменение значения. |
|
Сообщ.
#6741
,
|
|
|
|
Цитата D_KEY @ Где ты его Например на терминале проверки флешек на вирусы. Мелочь конечно. (там один поток гуи, другой мониторит подключение/отключение устройства, третий -- запуск/работа/остановка каспера, четвертый обрабатывает пользовательский ввод с гуя). На Racket. Добавлено Щас еще планирую одну програмулину (больше Just for fun, поэтому в фоне по отношению к основным обязаностям, когда время есть) переписать в виде JSON-веб-сервиса на Go, может там где заюзаю. Добавлено Цитата D_KEY @ Поскольку программисты читают доки, спеки и литературу по языку, который используют(а не перекладывают понятия из своих любимых языков на другие), то для них это выглядит как изменение значения. А потом они видят, что передать ссылку как в плюсах или паскале нельзя и забывают про эту техническую особенность за ненадобностью. |
|
Сообщ.
#6742
,
|
|
|
|
Цитата korvin @ А потом они видят, что передать ссылку как в плюсах или паскале нельзя и забывают про эту техническую особенность за ненадобностью. Ну пусть забывают. Главное, чтоб не фантазировали на тему биндингов |
|
Сообщ.
#6743
,
|
|
|
|
Вот, кстати, недавно разбирались с коллегой в этой теме. Видео посмотреть у меня нет времени, но я не нашёл в Стандарте место про потокобезопасность const. Да приводил ты уже эту ссылку. На что я сказал, что если уж Цитата Oblomov Systems is a one-person software company based in Utrecht, The Netherlands. использует хаскель, то да, с завтрашнего дня на него пересядет вся индустрия - готовься, будешь мега востребованным. Добавлено Цитата MyNameIsIgor @ Вот, кстати, недавно разбирались с коллегой в этой теме. Видео посмотреть у меня нет времени, но я не нашёл в Стандарте место про потокобезопасность const. Radagast, это я к тому, что если вы можете раскрыть тему и просветить меня, то я буду только рад |
|
Сообщ.
#6744
,
|
|
|
|
MyNameIsIgor
просто посмотрите видео, оно не такое уж и длинное можно даже только 1ю половину, про const (во 2й половине-mutable) а суть в том, что это требование получилось у них случайно, в одном-единственном абзаце из Стандартной библиотеки. Из него следует, что все const-методы либо ничего не меняют в объекте, либо имеют соотв. защиту от вызова из нескольких потоков. |
|
Сообщ.
#6745
,
|
|
|
|
Цитата Radagast @ это требование получилось у них случайно, в одном-единственном абзаце из Стандартной библиотеки. Из него следует, что все const-методы либо ничего не меняют в объекте, либо имеют соотв. защиту от вызова из нескольких потоков. Вооооот. Примерно к такому выводу мы с коллегой и пришли. Т.е. сам по себе const ничего нового не привносит - это в стандартной библиотеке так сделано. Правильно? |
|
Сообщ.
#6746
,
|
|
|
|
Цитата MyNameIsIgor @ сам по себе const ничего нового не привносит Скотт Мейерс опубликовал примерный список тем, которые он собирается рассмотреть в новой книге Effective C++11. Одна из них Цитата Make const member functions thread-safe. Так что, const сам по себе этого не делает. |
|
Сообщ.
#6747
,
|
|
|
|
Kray74, спасибо, я так и думал.
|
|
Сообщ.
#6748
,
|
|
|
|
Не говори ерунды. Как ты без const определишь, мудак ли код писал или нет?
Добавлено Цитата MyNameIsIgor @ Наверно имелся в виду "17.6.5.9 Data race avoidance" Видео посмотреть у меня нет времени, но я не нашёл в Стандарте место про потокобезопасность const. |
|
Сообщ.
#6749
,
|
|
|
|
Цитата Qraizer @ Не говори ерунды. Как ты без const определишь, мудак ли код писал или нет? Да я и с const не могу быть уверен судя по по обсуждению. |
|
Сообщ.
#6750
,
|
|
|
|
korvin, я так и не понял, что тебе не ясно. Ты не понимаешь пользы от констант? Или считаешь, что константы пользовательских типов не имеют смысла? Или тебе не понятна польза от контракта функции/метода, который говорит, что не будет менять переданный ему объект? Я бы лично вообще предпочел const по умолчанию, чтобы возможность изменений была явным образом обозначена...
Не понимаю, что тебе не понятно |