• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pomysł na bibliotekę. Czy coś takego się przyda? [ankieta]

Object Storage Arubacloud
0 głosów
343 wizyt
pytanie zadane 22 sierpnia 2015 w C i C++ przez Radfler VIP (101,030 p.)

Mam do użytkowników foum pewne pytanie. Dłuższy czas myślałem nad stworzeniem biblioteki do C++. Zawierałaby ona komponenty potrzebne do sprawdzania właściwości danego typu (coś jak <type_traits>). Sprawdzałaby ona czy typ spełnia daną koncepcję (Concepts: http://en.cppreference.com/w/cpp/concept). Co to jest koncept? Odsyłam do wikipedii: https://en.wikipedia.org/wiki/Concepts_%28C%2B%2B%29. Przykład kodu:

template<typename Container>
struct Stack {
    static_assert(rdf::is_container<Container>::value,
                  "Argument szablonu 'Container' musi spełniać wymagania kontenera");
    // ...
};

Stack<std::vector<int>> stos1; // Brak błędu, std::vector<> spełnia wymagania kontenera
Stack<int> stos2; // Błąd w czasie kompilacji

W tym przypadku szablon rdf::is_container<> sprawdza czy podany typ (jako argument szablonu), spełnia wymagania 'Container' (http://en.cppreference.com/w/cpp/concept/Container). Pełen zarys biblioteki można znaleźć TU. Moje pytanie brzmi: czy taka biblioteka się komukolwiek przyda?

Możliwe odpowiedzi:
Ciekawy pomysł, może się przydać (2 głosów, 18%)
Pomysł niezły, ale raczej nie skorzystam (5 głosów, 45%)
Słaby pomysł, po co mi taka biblioteka (4 głosów, 36%)
2/10 do widzenia (0 głosów)

2 odpowiedzi

+1 głos
odpowiedź 22 sierpnia 2015 przez 0xf Dyskutant (8,180 p.)
Spoko pomysl :)
+1 głos
odpowiedź 22 sierpnia 2015 przez adrian17 Ekspert (344,860 p.)
W zasadzie biblioteka symulująca koncepty już istnieje, jako część Boosta: http://www.boost.org/doc/libs/1_59_0/libs/concept_check/reference.htm

No i jeśli chcesz się pobawić z prawdziwymi konceptami to obecny trunk GCC6 ma dla nich wsparcie od trochę ponad tygodnia.
komentarz 22 sierpnia 2015 przez Radfler VIP (101,030 p.)
O bibliotece Boosta słyszałem już wcześniej, jednak z tego co widzę nie wszystkie koncepty można sprawdzić z użyciem tej biblioteki. Będę musiał też ogarnąć te prawdziwe koncepty, bo z tego co póki co wiem to świetne narzędzie ;)
komentarz 22 sierpnia 2015 przez adrian17 Ekspert (344,860 p.)
Jakby co, oficjalny dokument o konceptach (a więc i obecne wsparcie GCC6) ogranicza się do samej ich funkcjonalności - możesz więc je normalnie definiować i używać. Nie definiuje jednak żadnych faktcznych konceptów, więc w GCC trzeba je samemu zdefiniować (co sam robię w wolnym czasie). Pierwszy obecnie opracowywany dokument który między innymi wprowadza je do biblioteki standardowej to https://github.com/ericniebler/stl2/blob/master/DXXXX.pdf.

Podobne pytania

0 głosów
1 odpowiedź 879 wizyt
pytanie zadane 11 marca 2017 w C# przez marcin99b Szeryf (82,060 p.)
+1 głos
0 odpowiedzi 183 wizyt
pytanie zadane 26 grudnia 2022 w Python przez MichaelM Bywalec (2,520 p.)
–1 głos
1 odpowiedź 136 wizyt
pytanie zadane 24 września 2016 w C i C++ przez Kimi Bywalec (2,050 p.)

92,552 zapytań

141,400 odpowiedzi

319,531 komentarzy

61,938 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...