W C++ możesz używać zarówno ogólnych, jak i typu bezpiecznych pojemników za pomocą szablonów. Jednak w C, jeśli chcesz generycznych pojemników, musisz (afaik) użyć void*
, co oznacza, że tracisz bezpieczeństwo typu. Aby mieć bezpieczne kontenery typu, trzeba je ponownie wdrożyć dla każdego rodzaju danych, które chcesz przechowywać.W C, Ogólne pojemniki lub bezpieczne pojemniki?
Biorąc pod uwagę, że C następuje bardziej the-programista-wie-co-On jest czynieniu filozofię niż C++, co byłoby bardziej idiomatyczne rzeczą do zrobienia w C: używać pojemników rodzajowe z void*
, lub dokonać własnych pojemników na każdy typ danych?
Można zdefiniować tylko te algorytmy, które są potrzebne. Ale widzę, co mówisz. –
@PaulManta: Tak, schodziłem z przykładu kontenera, który powinien obsługiwać dowolne typy. –