Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.02.2015, 03:03   #1
goshek
Пользователь
 
Регистрация: 07.01.2014
Сообщений: 33
По умолчанию Stack и указатели c++

Есть класс - интерфейс
Код:
template < class ItemType > class StackInterface
{
public:

	virtual bool isEmpty()const = 0;

	virtual bool    push(const ItemType & newEntry) = 0;

	virtual bool    pop() = 0;

	virtual ItemType peek() const = 0;



};
есть класс Node

Код:
template < class ItemType>
class Node
{
private:
	ItemType item; // A data item
	Node<ItemType>* next; // Pointer to next node
public:
	Node();
	Node(const ItemType& anItem);
	Node(const ItemType& anItem, Node<ItemType>* nextNodePtr);
	void setItem(const ItemType& anItem);
	void setNext(Node<ItemType>* nextNodePtr);
	ItemType getItem() const;
	Node <ItemType>* getNext() const;
	void printStack();
}; 
#endif
Их использует класс LinkedStack

Код:
#include "StackInterface.h"
#include "Node.h"
template < class ItemType > class LinkedStack :public StackInterface < ItemType >
{
private:
	Node < ItemType > *topPtr;	// Pointer to first node in the chain;
	// this node contains the stacks top
public:
	
	LinkedStack();	// Default constructor
	LinkedStack(const LinkedStack < ItemType > &aStack);	// Copy constructor

	virtual ~LinkedStack();	// Destructor
	
	bool isEmpty() const;

	bool push(const ItemType &newItem);

	bool pop();

	ItemType peek() const;

	//ItemType peek2() const;
};  // end LinkedStack

Вопрос, как в мэйн создать нужный объект и использовать функции типа printStack() и т д?

Подскажите как русские программисты называют понятие linked based implementation, хочу найти статьи на русском, но толком не знаю как забить в гугле?)

Спасибо
goshek вне форума Ответить с цитированием
Старый 11.02.2015, 17:09   #2
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,609
По умолчанию

В main создается объект класса LinkedStack.

Код:
LinkedStack <int> a;
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Class stack qip2005 Общие вопросы Delphi 6 26.06.2012 09:30
Pascal Stack S1l3nce Помощь студентам 0 22.09.2011 15:47
STACK Lawliet32 C# (си шарп) 2 31.03.2011 14:04
Помогите со Stack МаксMorfey Помощь студентам 0 10.05.2009 16:37
[C] массивы, указатели, двойные указатели. Iggel Общие вопросы C/C++ 5 05.05.2009 12:39