
Yaroslav
21.02.2018
14:20:58
Можно golang еще тогда

Maksym
21.02.2018
14:21:43

Max
21.02.2018
14:21:46
просто потому что Moveable концепт не требует наличия копирования

Google

Max
21.02.2018
14:22:15
а Copyable концепт требует наличия мувов

Владислав
21.02.2018
14:22:51
шаблонизированные лямбды, ммм

Maksym
21.02.2018
14:23:58
ладна

Grigor
21.02.2018
14:24:56

Владислав
21.02.2018
14:25:30
ладна
прост не стоит совмещать несовместимое. Хочется аутировать ну так пиши веб серверы на чистом хускеле

Maksym
21.02.2018
14:26:38

Дед Пегас
21.02.2018
14:28:11

Ilia
21.02.2018
14:30:22

Max
21.02.2018
14:32:14
они не запрещены, человек все еще может их определить
другое дело, что разные ошибки компиляции должны приводить к разным результатам

Google

Max
21.02.2018
14:33:20
Use of not declared function — пойди и определи ее
Use of implicitly deleted function — ты делаешь чтото не так

Ilia
21.02.2018
14:33:22

Max
21.02.2018
14:33:43
ээ, братишк, внимательно прочитай топик, ты просто врываешься
и начниаешь мешать все подряд

Владислав
21.02.2018
14:34:02
и так всегда

Radio
21.02.2018
14:41:43

Vergil
21.02.2018
15:27:00
господа!
Кто собирал skia?

Constantine
21.02.2018
15:40:30

Berkus
21.02.2018
15:45:18

Дед Пегас
21.02.2018
15:45:27
Ау?
Ой

Alex Фэils?︙
21.02.2018
15:49:54

Vsevolod
21.02.2018
16:03:18
ну а deleted они по стандарту для совместимости со старым котом
гм, точнее move constructor/move assignent не объявлены, если есть только конструкторы копирования по причинам совместимости, так как в старом стандарте вообще deleted нет

Max
21.02.2018
16:13:16
может быть, но мне кажется, что все-таки по другим соображениям

Maksym
21.02.2018
16:14:35

Vsevolod
21.02.2018
16:17:29
Max ну разницы между deleted и non-declared для implicit метода, как я понимаю, нет никакой
возможно, есть какое-то различие с точки зрения неявных преобразований
тогда это еще больше имеет смысл: legacy код должен работать с universal reference как с lvalue, копируя без move оптимизаций

Google

Vsevolod
21.02.2018
16:20:06
и тогда вместо move constructor применяется copy constructor
а обратное неверно - там работает rule of five

Max
21.02.2018
16:33:12
разница есть в сообщениях компилятора
и концептуальная :)
я ответил для себя и я выхожу из дискуссии, потому что у меня есть жоб ту ду

Igor
21.02.2018
17:10:47
я ответил для себя и я выхожу из дискуссии, потому что у меня есть жоб ту ду
но всё равно тебе вдогонку ответ Говарда)
Deleted copy members are arguably a more conservative solution than "not-declared" copy members since the deleted members will participate in overload resolution with other non-special constructors, such as templated constructors. It is not rare for a templated constructor to accidentally be used as a copy constructor, and this would happen more often if the copy constructor didn't exist.

Berkus
21.02.2018
18:07:20
чуваки, спасайте
нужна дженерик очередь, multi-producer multi-consumer, желательно где-нибудь в бусте.

fox.cpp
21.02.2018
18:08:37
boost.lockfree чтоль?
The queue class provides a multi-writer/multi-reader queue, pushing and popping is lock-free, construction/destruction has to be synchronized.
http://www.boost.org/doc/libs/1_66_0/doc/html/boost/lockfree/queue.html

Alexander
21.02.2018
18:11:09

fox.cpp
21.02.2018
18:11:53

fox.cpp
21.02.2018
18:11:58
Спасибо!

Alexander
21.02.2018
18:12:11

Berkus
21.02.2018
18:12:15

Kirill
21.02.2018
18:13:27

Alexander
21.02.2018
18:13:39

fox.cpp
21.02.2018
18:13:48

Alexander
21.02.2018
18:13:57
но Хижинский решил меня заигнорить

Kirill
21.02.2018
18:14:34
Надо через рг21 пробить пропозал на конан как часть стандарта :)

Google

Kirill
21.02.2018
18:14:46
Вот она высшая цель :)

Alexander
21.02.2018
18:14:56

fox.cpp
21.02.2018
18:15:08

Alexander
21.02.2018
18:15:12
там только-только группа туллинга появилась

fox.cpp
21.02.2018
18:15:49

Alexander
21.02.2018
18:16:01
дай-ка линк на сорцы

fox.cpp
21.02.2018
18:16:59
А, теперь увидел.

Admin
ERROR: S client not available

fox.cpp
21.02.2018
18:17:02
The header <boost/core/typeinfo.hpp> defines a class boost::core::typeinfo, which is an alias for std::type_info when RTTI is enabled, and is a reasonable substitute when RTTI is not supported.
Окей.

Alexander
21.02.2018
18:17:21
?

fox.cpp
21.02.2018
18:18:15
Дай бог побольше нервов людям, которым приходится поддерживать C++98.

Alexander
21.02.2018
18:18:45

fox.cpp
21.02.2018
18:22:17

Berkus
21.02.2018
18:23:03

Alexander
21.02.2018
18:24:08

Kirill
21.02.2018
18:25:36

fox.cpp
21.02.2018
18:26:41

Google

fox.cpp
21.02.2018
18:27:08
Совсем без понятия, как можно полиморфные типы идентифицировать, имея указатель на базовый.

Kirill
21.02.2018
18:30:36
Отдаленный.
Typeinfo можно сранювнивать, но передавать нельзя :(

Berkus
21.02.2018
18:31:23
они ебанутые там
и поддерживают борландовские компиляторы
поэтому такая хуйня
короче, очередей в бусте до жопы и все хуевые донельзя

fox.cpp
21.02.2018
19:10:27

Berkus
21.02.2018
19:10:31
есть и в boost.thread, и в boost.log и в boost.lockfree, и еще где-то забыл уже где
все из них требуют CopyConstructible мне нахуй не нужный
ни один из них не поддерживает даже близко нужный мне апи
bool empty() const {
size_t size() const {
void clear() {
void wakeUpAll() {
void enqueue(value_type&& v) {
void enqueueUrgent(value_type&& v) {
template <typename ...Args>
void emplace(Args&&...args) {
template <typename ...Args>
void emplaceUrgent(Args&&...args) {
value_type dequeue() {
value_type waitDequeue() {
value_type waitDequeue(std::chrono::milliseconds timeout) {
вроде не слишком много прошу?

fox.cpp
21.02.2018
19:14:32
По-моему ты просишь очередь и condition_variable в одном классе.

Berkus
21.02.2018
19:15:24
ну оно у меня так примерно и сделано было - мьютекс и два дека, но что-то ASan мне проел плешь что объект используется после удаления - пытаюсь понять что ему не нравится

Vyacheslav
21.02.2018
19:30:53
#book
https://www.piter.com/collection/new/product/linux-api-ischerpyvayuschee-rukovodstvo

Ostap
21.02.2018
19:33:48
1248 страниц, исчерпывающее

Berkus
21.02.2018
19:47:52

Square
21.02.2018
20:17:34
Топ и к тому же хедер-онли