Size: a a a

2021 July 13

D

Danya in pro.cxx
И как это связано со structured binding?
источник

TS

Till Schneider in pro.cxx
Ты добавляешь в namespace std?
источник

K

Kelbon in pro.cxx
позволяет писать auto [a,b] = yourclass
источник

D

Danya in pro.cxx
В std можно писать ограниченный набор специализаций и кажется эти не входят в него ;)
источник

K

Kelbon in pro.cxx
источник

D

Danya in pro.cxx
источник

K

Kelbon in pro.cxx
It is allowed to add template specializations for any standard library class template to the namespace std only if the declaration depends on at least one program-defined type and the specialization satisfies all requirements for the original template, except where such specializations are prohibited.
источник

D

Danya in pro.cxx
Ну пример конечно высосан из пальца, там и так есть поддержка structured binding
источник

K

Kelbon in pro.cxx
так на то это и пример
источник

D

Danya in pro.cxx
Чтобы быть бесполезным?)
источник

D

Danya in pro.cxx
> except ...
Кажется все специализации запрещены, если они явно не разрешены
источник

K

Kelbon in pro.cxx
это просто первое что я увидел в гугле по запросу, неважно что там, важно что там microsoft пишет Step 2: Specialize the std::tuple_size so that its value is a std::size_t integral constant that says how many pieces there are.
источник

K

Kelbon in pro.cxx
нет, вес разрешены, кроме тех которые запрещены
источник

D

Danya in pro.cxx
Тебе повезло
источник

D

Danya in pro.cxx
В любом случае в статическом анализе false positive это нормально
источник

TS

Till Schneider in pro.cxx
есть ли какая-то от этого оверинженеринга практическая польза?
кажется, что если хочешь struct bindings, это можно сделать простой функцией, которая возвращает tupple, как например
источник

VS

Vlad Serebrennikov in pro.cxx
по-моему, sender «вызовет» callback там, где он выполняется. а выполняется он там, где scheduler скажет
источник

АК

Александр Караев... in pro.cxx
Польза есть. Берём класс геометрического вектора с непубличными полями и распаковываем его без всяких лишних вызовов.
источник

K

Kelbon in pro.cxx
эм... Ну польза такая, что берёшь и пишешь auto [a,b,c,d,] = InstanceOfMyClass;
источник

K

Kelbon in pro.cxx
а какая то функция, возвращающая какой то тупл, на каком то очевидно рантайме, вот это реально костыль и UB
источник