rapture 10.06.2011 14:29 unknown

Нет, вот такая конструкция заставляет мой мозг выпадать.
template < class T >
class stack
{
public:
virtual void push ( T ) = 0; // чистая виртуальная функция
virtual T pop () = 0; // чистая виртуальная функция
};
А также фразы "это позволяет использовать стек, но не создавать его". Как, блеать, можно использовать функцию, не создав ее (т.е. не выделив под нее память????). Я валяюсь.

1. gelraen 10.06.2011 19:40

абстрактные классы используются как интерфейсы (это то, чего сильно не хватает в ruby(да и в питоне, наверное)), ты можешь написать реализацию конкретного стека с конкретной структурой данных и алгоритмами добавления/удаления элементов и использовать эту реализацию с кодом, который практически ничего не знает о том что ты там написал, но знает об интерфейсе stack

2. rapturegelraen /1 10.06.2011 19:41 unknown

Это не для меня, я слишком туп.

Do you really want to delete ?