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

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

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2018, 18:57   #1
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,550
По умолчанию Структуры и ООП в Visual C

Со структурами можно работать так. Чтобы их куда-то запихнуть, редактирую файл вывода на экран. Это коряво, но результат получился. Материала по структурам немного.

Программа запускается в Windows Vista.
О-па, а вот и первая ошибка. При попытке изменить размеры окна все данные, которые я вывел на экран, "съезжают" вниз. Забыл обнулить вертикальную координату в начале файла!
Код:
//   Локальные структуры

struct aa      //   struct first, stru
{
   int a;
   char b;
};

struct ab      //   struct second
{
   int a;
   char b;
};

struct ac      //   struct byte
{
   int b1: 1; int b2: 1; int b3: 1; int b4: 1; int b5: 1; int b6: 1; int b7: 1; int b8: 1;
};

union ad      //   union bits
{
   char a;
   struct ac b;
};

struct aa bb;
struct ab bc;
union ad bd;

//   Локальные функции

ee (struct aa, CDC *);
ef (union ad, CDC *);      //   decode

//   Локальные переменные

int gg = 10, gh = 10;      //   координаты вывода текста
int gi = 100;


void CP127View::OnDraw (CDC *pDC)
{
   CP127Doc *pdoc = GetDocument ();
   ASSERT_VALID (pdoc);

   int a;
   double d;
   CString g;
   int gi = 5;

   //   p125
   bb.a = 1;
   bb.b = 'f';
   bc.a = bb.a;

   //   p126
   bb.a = 1;
   bb.b = '2';
   ee (bb, pDC);

   //   p129
   bd.a = 'a';
   ef (bd, pDC);

   //   p164
   pDC -> TextOut (gg, gh, "4. C++ - хороший язык.");
   gh += 25;

   a = 100;
   g.Format ("Вы ввели число %i.", a);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   d = 1.2345;
   g.Format ("Переменная типа double %g.", d);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   //   p166
   g.Format ("5. Локальная переменная %i.", gi);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   g.Format ("Глобальная переменная %i.", ::gi);
   pDC -> TextOut (gg, gh, g);
   gh += 25;
}


//   Локальные функции

ee (struct aa bb, CDC *pDC)
{
   CString a;

   a.Format ("2. %i, %i.", bb.a, bb.b);
   pDC -> TextOut (gg, gh, a);
   gh += 25;
   return 0;
}

ef (union ad bd, CDC *pDC)
{
   CString a = "3. ";

   if (bd.b.b8) a += '1'; else a += '0';
   if (bd.b.b7) a += '1'; else a += '0';
   if (bd.b.b6) a += '1'; else a += '0';
   if (bd.b.b5) a += '1'; else a += '0';
   if (bd.b.b4) a += '1'; else a += '0';
   if (bd.b.b3) a += '1'; else a += '0';
   if (bd.b.b2) a += '1'; else a += '0';
   if (bd.b.b1) a += '1'; else a += '0';

   pDC -> TextOut (gg, gh, a);
   gh += 25;
   return 0;
}
Изображения
Тип файла: png 1.png (30.2 Кб, 129 просмотров)
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...
jura_k вне форума Ответить с цитированием
Старый 28.12.2018, 19:30   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,772
По умолчанию

А какой смысл этой темы? Вам одной своей мало? Или вы форум со своими бложеком перепутали?
p51x вне форума Ответить с цитированием
Старый 28.12.2018, 20:26   #3
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,550
По умолчанию

Так этот код под старые темы не подходит. Там название другое.

Это под Windows, а не под MS-DOS. А под Windows у меня две темы. И ни одна не "в тему".
Тут нет ввода с клавиатуры.
И мой движок для этих программ не используется, тут им даже не пахнет. Поэтому новая тема под новые задачи.
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...

Последний раз редактировалось jura_k; 28.12.2018 в 20:28.
jura_k вне форума Ответить с цитированием
Старый 28.12.2018, 20:39   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,772
По умолчанию

Ну точно перепутали...
p51x вне форума Ответить с цитированием
Старый 28.12.2018, 21:03   #5
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,550
По умолчанию

А куда девать следующую тему? С графикой Visual C? Там и структур нету. Есть только рекуррентная функция.
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...
jura_k вне форума Ответить с цитированием
Старый 28.12.2018, 21:11   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,772
По умолчанию

Я уже написал - в свой бложек.
p51x вне форума Ответить с цитированием
Старый 29.12.2018, 04:29   #7
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,550
По умолчанию

У меня его нет.

Да я писатель! Я писать хочу!
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...
jura_k вне форума Ответить с цитированием
Старый 29.12.2018, 06:51   #8
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Сообщений: 4,986
По умолчанию

Цитата:
Сообщение от jura_k Посмотреть сообщение
Да я писатель! Я писать хочу!
Ну так пишите сказки а не исходный код(правда, на другом форуме)- тут форум программистов а не писателей и то что вам требуется(перехватить нажатие клавиш с клавиатуры, на пример) называется хуком. Про WinApi что либо слышали ила вам, так же, лень это изучать?
vasek123 вне форума Ответить с цитированием
Старый 29.12.2018, 13:05   #9
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,550
По умолчанию

Про WinApi у меня в книжке только упоминается и говорится, что его изучение заслуживает отдельной книжки. Но не буду же я учить то, что было в 1998-ом году. Мне другую библиотеку подавай.
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...
jura_k вне форума Ответить с цитированием
Старый 29.12.2018, 13:07   #10
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,772
По умолчанию

Цитата:
Сообщение от jura_k Посмотреть сообщение
Но не буду же я учить то, что было в 1998-ом году.
Вы о чем? ВинАПИ никуда не делось... или вы под этим что-то свое поняли?

Особенно это весело смотрится, глядя на:
Цитата:
Visual C++ 6.0 (commonly known as VC6), which included MFC 6.0, was released in 1998.
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структуры (Visual C++) ekv Помощь студентам 1 05.12.2014 09:14
С++ Visual динамические структуры Blondy Помощь студентам 8 02.03.2012 02:09
ООП Delphi разработка классов для реализации контейнера на основе структуры"упорядоченный динамический список" naffy Помощь студентам 0 28.06.2011 00:22
TurboPascal. Структуры данных. ООП. mx22 Помощь студентам 2 23.06.2011 14:34
Программа (ООП), Microsoft Visual C++, тип проекта Win32 Project Spellpir Фриланс 4 11.02.2010 23:40