Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Einsttein
1 / 1 / 0
Регистрация: 26.10.2009
Сообщений: 8
#1

Вывод скрытых параметров класса - C++

27.10.2009, 02:10. Просмотров 891. Ответов 3
Метки нет (Все метки)

Вот код программы - простейший стек символов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
class steck {
int size;
char* bottom;
char* point;
public:
   steck(int s){ bottom = point = new char [size=s];}
   void push_steck(char simvol){ *point++=simvol;}
   char get_steck(){return *point--;}
   void get_point(){ cout << point;}
   void get_bottom(){ cout << bottom;}
   ~steck(){ delete [] bottom;}
};
void main(){
for(int i=0;i<60;i++) cout << endl;
steck a(3);
a.get_bottom(); cout << "   ___   "; a.get_point(); cout << endl;
a.push_steck('m');
a.get_bottom(); cout << "   ___   "; a.get_point(); cout << endl;
a.push_steck('r');
a.get_bottom(); cout << "   ___   "; a.get_point(); cout << endl;
}
Хотел посмотреть на адреса памяти, но вместо обычных адресов на экран выползает полная ерунда:
[IMG]http://s58.***********/i162/0910/53/76051326470c.png[/IMG]
В чем может быть проблема? Компилятор borlandc++ 3.1
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2009, 02:10     Вывод скрытых параметров класса
Посмотрите здесь:

Передаче параметров из класса в main - C++
В header файле в метод menu класса Menu, передаю класс ResuryHealth. int Menu::menu(ResuryHealth){ ..... } Соответственно при...

Передача параметров в дружественную функцию класса - C++
Всем доброго времени суток. Читал про дружественные функции, в учебнике по которому учусь написано, что в дружественную функцию класса...

Выбор типа переменной-члена класса в зависимости от параметров передаваемых конструктору - C++
Здравствуйте форумчане! Ответьте пожалуйста на вопрос - возможно ли такое на С++ и если да, то как это реализовать? Имеется класс, в нём...

Как избежать повтора параметров конструктора класса-родителя в конструкторе наследника? - C++
С каждым новым наследуемом классом, число параметров конструктора увеличивается. class A { public: A(int a, float b, double c) ...

Вывод параметров или переменных из функции - C++
Здравствуйте. В Паскале можно вернуть несколько параметров. procedure(int i,j; var real hik, tik; var string tin, gak;); begin ...

Вывод двух параметров из функции с использованием ссылок - C++
В программе необходимо ввести в функцию один параметр (х), а получить из неё три. Помогите пожалуйста правильно сделать. Заранее спасибо. ...

Написать программу, которая реализует функцию с неограниченным количеством параметров, организовывающую форматированный вывод на экран. - C++
Помогите решить задачу, запутался я с этими созданиями ф-ций, вот задача: Написать программу, которая реализует функцию с неограниченным...

Вывод из класса наследника - C++
У меня получается вывод из главного класса, а когда вывожу через функцию из класса наследника выдает ошибку, из-за чего так???? хоты вывожу...

Вывод значений объектов класса - C++
Приветствую! Навоял код, решил в конце вывести значения переменных подряд: dist1.show(); dist2.show(); dist3.show(); Так...

Ввод и вывод данных класса - C++
Привет уважаемые гуру! Я к вам с очередным вопросом :senor: Нужно вывести данные класса Store : #include &lt;stdio.h&gt; #include...

Вывод переменной из наследника класса - C++
Здравствуйте. Как можно вывести значение переменной класса из наследника, изменив это значение в нём? Таким методом, как я пробую, значение...

Ввод/вывод, метод класса - C++
Добрый день, только начал изучать c++ и сразу много всяких непонятных ошибок, в c# куда проще было =( #include &lt;iostream&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
27.10.2009, 02:30     Вывод скрытых параметров класса #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
using namespace std;
class steck {
 int size;
 char* bottom;
 char* point;
 public:
 steck(int s){ bottom = point = new char [size=s];}
 void push_steck(char simvol){ *point++=simvol;}
 char get_steck(){return *point--;}
 void get_point(){ printf ("%x", point);}
 void get_bottom(){ printf ("%x", bottom);}
 ~steck(){ delete [] bottom;}
};
 
int main(){
 for(int i=0;i<60;i++) cout << endl;
 
 steck a(3);
 a.get_bottom(); cout << " ___ "; a.get_point(); cout << endl;
 
 a.push_steck('m');
 a.get_bottom(); cout << " ___ "; a.get_point(); cout << endl;
 
 a.push_steck('r');
 a.get_bottom(); cout << " ___ "; a.get_point(); cout << endl;
 getchar ();
}
Дело в том, что вывод надо как-то отформатировать. Я вот вместо cout написал свой любимый printf и всё стало хорошо
с cout тоже можно как-то решить проблему, наверное, тут где-то тема была прикреплённая, что ли, про форматирование cout

Ну это ладно.
А вот что за кайф использовать оператор, который выпендривается- я про cout говорю?
Einsttein
1 / 1 / 0
Регистрация: 26.10.2009
Сообщений: 8
27.10.2009, 02:47  [ТС]     Вывод скрытых параметров класса #3
Спасибо.
Ну раньше у меня не было подобных проблем, cout выводил нормально.
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
27.10.2009, 03:06     Вывод скрытых параметров класса #4
Ну я не знаю, чё он вдруг так вот. Самому интересно.
Нет, я понимаю, если бы как аргумент принимался адрес переменной, это ещё куда ни шло. Типа функция вывода с определёнными адресами не работает (предположим).

Но так работать (вернее, не работать) с КОРРЕКТНЫМИ значениями...
Yandex
Объявления
27.10.2009, 03:06     Вывод скрытых параметров класса
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru