Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 28.12.2018, 19:57   #1
jura_k
вовсе не
Профессионал
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,247
Репутация: 93
По умолчанию Структуры и ООП в 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;
}
Миниатюры
Нажмите на изображение для увеличения
Название: 1.png
Просмотров: 84
Размер:	30.2 Кб
ID:	95425  
__________________
мой канал на Ютубе: youtube.com/channel/UCdtIJx_8tDGrc9n-Y0JsllA
jura_k вне форума   Ответить с цитированием
Старый 28.12.2018, 20:30   #2
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 14,896
Репутация: 2668
По умолчанию

А какой смысл этой темы? Вам одной своей мало? Или вы форум со своими бложеком перепутали?
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 28.12.2018, 21:26   #3
jura_k
вовсе не
Профессионал
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,247
Репутация: 93
По умолчанию

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

Это под Windows, а не под MS-DOS. А под Windows у меня две темы. И ни одна не "в тему".
Тут нет ввода с клавиатуры.
И мой движок для этих программ не используется, тут им даже не пахнет. Поэтому новая тема под новые задачи.
__________________
мой канал на Ютубе: youtube.com/channel/UCdtIJx_8tDGrc9n-Y0JsllA

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

Ну точно перепутали...
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 28.12.2018, 22:03   #5
jura_k
вовсе не
Профессионал
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,247
Репутация: 93
По умолчанию

А куда девать следующую тему? С графикой Visual C? Там и структур нету. Есть только рекуррентная функция.
__________________
мой канал на Ютубе: youtube.com/channel/UCdtIJx_8tDGrc9n-Y0JsllA
jura_k вне форума   Ответить с цитированием
Старый 28.12.2018, 22:11   #6
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 14,896
Репутация: 2668
По умолчанию

Я уже написал - в свой бложек.
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 29.12.2018, 05:29   #7
jura_k
вовсе не
Профессионал
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,247
Репутация: 93
По умолчанию

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

Да я писатель! Я писать хочу!
__________________
мой канал на Ютубе: youtube.com/channel/UCdtIJx_8tDGrc9n-Y0JsllA
jura_k вне форума   Ответить с цитированием
Старый 29.12.2018, 07:51   #8
vasek123
Заблокирован
 
Регистрация: 21.11.2008
Адрес: IP адрес: 198.7.62.204 | Адрес:United States United States, Manassas | Провайдер: LeaseWeb | ищите..
Сообщений: 4,988
Репутация: 1588

icq: 590966827
skype: vasek12314
По умолчанию

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

Про WinApi у меня в книжке только упоминается и говорится, что его изучение заслуживает отдельной книжки. Но не буду же я учить то, что было в 1998-ом году. Мне другую библиотеку подавай.
__________________
мой канал на Ютубе: youtube.com/channel/UCdtIJx_8tDGrc9n-Y0JsllA
jura_k вне форума   Ответить с цитированием
Старый 29.12.2018, 14:07   #10
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 14,896
Репутация: 2668
По умолчанию

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

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структуры (Visual C++) ekv Помощь студентам 1 05.12.2014 10: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 12.02.2010 00:40


19:37.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.