Size: a a a

2021 February 23

s

std::slavik in supapro.cxx
вообще - подклассы в моей по крайней мере практике - не то чтобы частое явление
стараюсь их избегать по возможности
источник

s

std::slavik in supapro.cxx
читаемость ухудшается, переиспользование кода
источник

DK

David Kravets in supapro.cxx
std::slavik
вообще - подклассы в моей по крайней мере практике - не то чтобы частое явление
стараюсь их избегать по возможности
А как их избегать чем заменить ?
источник

s

std::slavik in supapro.cxx
David Kravets
А как их избегать чем заменить ?
ну если нечем заменить - то использую
источник

s

std::slavik in supapro.cxx
если можно без них - не использую
источник

MK

Mikhail Kalugin in supapro.cxx
std::slavik
вообще - подклассы в моей по крайней мере практике - не то чтобы частое явление
стараюсь их избегать по возможности
Иногда бывает полезно - параметры шаблонов они, таки, наследуют от родителя.
источник

s

std::slavik in supapro.cxx
ну типа я пару раз подумаю перед тем как внутри класса объявить сабкласс
а надо ли оно тут
а тут с легкой руки так втыкается и пока что не может объяснить человек - зачем
и судя по всему не очень понимает что такое сабкласс
источник

s

std::slavik in supapro.cxx
Mikhail Kalugin
Иногда бывает полезно - параметры шаблонов они, таки, наследуют от родителя.
ну вот в шаблонах в основном и использую
источник

s

std::slavik in supapro.cxx
но честно говоря - не уверен что и шаблоны человек понимает
источник

MK

Mikhail Kalugin in supapro.cxx
std::slavik
но честно говоря - не уверен что и шаблоны человек понимает
Я тоже очень в этом сомневаюсь.
источник

m

mixa secret in supapro.cxx
Кстати, можно ли как-то ограничить шаблоны, например чтоб тип мог бы быть только list \ vector \ deque \ stack ?
источник

s

std::slavik in supapro.cxx
mixa secret
Кстати, можно ли как-то ограничить шаблоны, например чтоб тип мог бы быть только list \ vector \ deque \ stack ?
да
источник

MK

Mikhail Kalugin in supapro.cxx
mixa secret
Кстати, можно ли как-то ограничить шаблоны, например чтоб тип мог бы быть только list \ vector \ deque \ stack ?
Концептами разве что...
источник

AS

Anatoly Shirokov in supapro.cxx
Mikhail Kalugin
Концептами разве что...
Или специализацией или SFINAE
источник

CD

Constantine Drozdov in supapro.cxx
Anatoly Shirokov
Или специализацией или SFINAE
Или поставить статик ассерт
источник

AS

Anatoly Shirokov in supapro.cxx
Constantine Drozdov
Или поставить статик ассерт
Вот и эволюция :)
источник

A

Artem in supapro.cxx
Доброго времени суток. У меня есть функция с параметрами, которую я должен вызвать допустим через 5 секунд. Кто подскажет как сделать? Гуглил, безрезультатно
источник

SS

Sergey Skvortsov in supapro.cxx
Artem
Доброго времени суток. У меня есть функция с параметрами, которую я должен вызвать допустим через 5 секунд. Кто подскажет как сделать? Гуглил, безрезультатно
Подожди пять секунд и вызови функцию с параметрами
источник

MK

Mikhail Kalugin in supapro.cxx
Sergey Skvortsov
Подожди пять секунд и вызови функцию с параметрами
sleep(5000)? сурово...
источник

d

dmbldr in supapro.cxx
Подскажите, откуда тут берётся ошибка double free or corruption (out).

Основной код:
class brute_force {
public:
void impl_fill(graph g) {
   if(all_subgraphs.find(g) == all_subgraphs.end()) {
       if(g.is_reachable(_s, _d)) {
           all_subgraphs.insert(g);
           for(size_t i = 0; i < g.num_edges(); ++i) {
               g.erase_edge(i);
               impl_fill(g);
           }
       }
   }
}

void fill_set() {
   impl_fill(_g); <--вот тут вылетает
}
private:
   graph _g;
   std::unordered_set<graph, graph_hash> all_subgraphs;
};
Код класса `graph`:
class graph {
public:
   using byte = unsigned char;
   using edge_type = std::vector<std::pair<byte, byte>>;

   graph() = default;
   graph(graph const& other) = default;

   graph(edge_type edges, byte n) : edges(std::move(edges)), n(n) {};

private:
   edge_type edges;
   byte n = 0;
};
источник