Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> что такое стек параметров? 
:(
    Опции темы
Лыжник
  Дата 8.11.2005, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



Здравствуйте,я недавно начал писать на Visual C++.
Есть задачка
Цитата
Разработать класс "стек параметров" в соответствии со следующим заданием:

состояние класса -

Стек параметров представляется в виде массива.Параметром стека могут быть данные сложного типа,например,первое поле число,второе поле строка символов фиксированной длины.Для описания параметра стека целесообразно использовать структуру.Память под массив выделяется стстически во время компиляции и задается массивом фиксированного массива.

Я не могу понять что такое стек параметров представленный в виде массива.
Если не сложно объясните кто-нибудь,желательно с описанием класса . smile
Заранее благодарю.
PM MAIL   Вверх
_hunter
Дата 8.11.2005, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 16
Всего: 98



т.е. обычный стек реализуется массивом ( проще говоря -- данные стека хранятся в массиве )


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
Лыжник
Дата 8.11.2005, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



то есть задан массив параметров ?
а при чем тут тогда стек ?
что то недопонимаю smile
если не сложно приведите оъявление такого класса пожалуйста(без методов smile ).

Это сообщение отредактировал(а) Лыжник - 8.11.2005, 15:57
PM MAIL   Вверх
Neitron
Дата 8.11.2005, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Они могли и базой данной это обозвать. Не суть.
Стек значит первым положил, последним взял.
Тебе и нужно видимо реализовать в виде методов, операции типо PUSH и POP

Это сообщение отредактировал(а) Neitron - 8.11.2005, 15:59


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
Exekutor
Дата 8.11.2005, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 1.11.2005
Где: Казахстан. Костан ай

Репутация: 1
Всего: 4



похоже идет массив стеков а в стеках уже параметры хранятся (стек - это такой динамический массив структур).


--------------------
[color=blue][size=2]En taro addun, ma sol larinas[/size][/color]
PM MAIL   Вверх
Лыжник
Дата 8.11.2005, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



Цитата(Neitron @ 8.11.2005, 15:58)
Они могли и базой данной это обозвать. Не суть.
Стек значит первым положил, последним взял.

я знаю что такое стек ,я просто не могу понять что от меня хотят в данной задачe, и как мне это реализовывать.
ьо есть примерно так? :
Код

class MyClass{
private:
struct Stack{
char *c;//параметр "строка"
int N;//параметр число
int l;//глубина стека
}
public:
......
}



Это сообщение отредактировал(а) Лыжник - 8.11.2005, 16:06
PM MAIL   Вверх
Neitron
Дата 8.11.2005, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Exekutor
Я уже сказал что такое стек, это не динамический массив структур. Это все что угодно может быть, и он совсем не динамический.
К примеру в ДОСЕ стек имеет определенный размер.
Еще раз повторюсь, стек - первым вошел, последним ушел, и это может быть всё что угодно.
Добавлено @ 16:03
Цитата
Цитата(Neitron @ 8.11.2005, 15:58)
Они могли и базой данной это обозвать. Не суть.
Стек значит первым положил, последним взял.

я знаю что такое стек ,я просто не могу понять что от меня хотят в данной задачe, и как мне это реализовывать.

Тебе видимо нужно создать перегруженные ф-ции PUSH и POP


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
Exekutor
Дата 8.11.2005, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 1.11.2005
Где: Казахстан. Костан ай

Репутация: 1
Всего: 4



Создается он динамически. Можно конечно создать сразу все - но это уже изврат.


--------------------
[color=blue][size=2]En taro addun, ma sol larinas[/size][/color]
PM MAIL   Вверх
Лыжник
Дата 8.11.2005, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



позвонил уточнил задание .Вот некоторые методы которые надо реализовать:
    создание экземпляров структуры(параметра) с инициализацией начальным состоянием по умолчанию;
    пустой конструктор для инициализации экземпляров и массивов экземпляров класса(стека);


Это сообщение отредактировал(а) Лыжник - 8.11.2005, 16:12
PM MAIL   Вверх
Neitron
Дата 8.11.2005, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Exekutor
Да ты что....

Лыжник
Я бы заюзал шаблоны...

Это сообщение отредактировал(а) Neitron - 8.11.2005, 16:14


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
srd
Дата 8.11.2005, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нереварин
**


Профиль
Группа: Участник Клуба
Сообщений: 951
Регистрация: 30.8.2003
Где: Владивосток

Репутация: 27
Всего: 49



Цитата(Exekutor @ 8.11.2005, 22:59)
похоже идет массив стеков а в стеках уже параметры хранятся (стек - это такой динамический массив структур).

Цитата(Exekutor @ 8.11.2005, 23:10)
Создается он динамически. Можно конечно создать сразу все - но это уже изврат.

Не стоит говорить столь безапелляционные утверждения, если смутно понимаете предмет.



--------------------
Не смей читать мою подпись!!!
PM MAIL Jabber   Вверх
Лыжник
Дата 8.11.2005, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



Цитата(Neitron @ 8.11.2005, 16:12)
Лыжник
Я бы заюзал шаблоны...

шаблоны использовать к сожалению нельзя smile
PM MAIL   Вверх
Neitron
Дата 8.11.2005, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Лыжник
Хорошо, а всевозможные структуры определены, которые будут пихаться в стек?
Добавлено @ 16:23
Можно сделать следующее..
Создать ф-цию
PUSH(void *, int)
Первым параметром указываешь адрес начала обекта, вторым параметром его размер, и копируешь его в char
Заводишь вектор такого плана
vector<int> Size
Каждый элемент вектора будет сообщать размер элемента в стеке.
Так ты будешь знать как забирать данные оттуда.


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
Лыжник
Дата 8.11.2005, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 8.11.2005

Репутация: нет
Всего: нет



сказано только :
Цитата
.Параметром стека могут быть данные сложного типа,например,первое поле число,второе поле строка символов фиксированной длины


PM MAIL   Вверх
Neitron
Дата 8.11.2005, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

Репутация: 2
Всего: 5



Просто, если не знать тип того какой параметр ты хочешь оттуда забрать, то с ним тяжело будет работать. А если мы вводим понятие типа, то мы должны определеить всевозможные типы, которые могут хранится в стеке и создать еще один ветокр такого плана
Код

enum Type{
   Type_1, // например целый тип
   Type_2, // например строка заданной длины
   Type_3  // например число с плавающей точкой.
};

vector<Type> Types;




Это сообщение отредактировал(а) Neitron - 8.11.2005, 16:30


--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0734 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.