93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
1

Кризис головного моска...

18.08.2008, 19:09. Показов 1312. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вообщем, вот в чем проблема...
После длительного анализа накопленных мною знаний в области C++ я решил что что то упустил...
Вот что я знаю из достаточно сложных тем:
Перегрузка операторов, различные конструкторы, потоки, поразрядные операции, указатели, массивы, строки.
Но в некоторых кодах я видел(прямо в функции main()) делали вот так - класс::член
что это обозначает? если члены мы уже реализовали(вне main()) не могу разобрать... Видел недавно игру змейку, написанную под консоль, и задумался как такое сделать?! Как у них получается выводить все в одном месте, вообщем помогите, может сталкивались с такой проблемой... Что читать, и т.д.:'(
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.08.2008, 19:09
Ответы с готовыми решениями:

Перенос из головного файла h в CPP файл
#include <iostream> #include <string> #include "OverOper.h" using namespace std; int main ()...

Структуры данных-стек. Чтение головного элемента
не понимаю что подразумевает эта функция. написано "Возможны три операции со стеком: добавление...

Творческий кризис
Ребят, предложите, что написать(( Делать нечего, играть не хочется. В голову одни велосипеды...

Партнерство в кризис!
Предлагаю объединиться под одной крышей в нежилом помещении для ведения бизнеса. Обладаю...

9
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
18.08.2008, 19:20 2
класс::член - обозначает член класса...
Вообще, запутал, че-то, ты своим вопросом...
0
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
18.08.2008, 19:31  [ТС] 3
Тогда можно прямо из функции main() задать начальное значение члену класса?
Код
void main()
{
   my_class::my_var = 5;
   ...
   ...
}
Или нет? А что скажите про змейку?
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
18.08.2008, 19:33 4
Можно. Так же, как выше ты и написал.
А что про змейку? Берем графическую библиотеку и рисуем змейку. Что именно надо?
0
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
18.08.2008, 19:35  [ТС] 5
Ну, допустим поле это у нас массив, а как его обновлять с отрисовкой?? cout'ом же так не получится...
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
18.08.2008, 19:38 6
Как не получится?
0
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
18.08.2008, 19:42  [ТС] 7
ну сам подумай, ПОД КОНСОЛЬ, как? Как ты заставишь ее(змейку) идти назад(или в любую другую сторону) и ДИНАМИЧЕСКИ изменять массив(поле) с помощью cout, и что за граф библиотека под консоль?Разве такое есть...
У нас всегда будет выполняться переход на новую строчку. т.к. поток закрывается, ты сам писал нечто подобное?
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
18.08.2008, 19:47 8
Блин, да это все писали! Молча! Берешь graphics.h и пишешь! Хоть влево, хоть вправо...
Просто ты говришь, "как это сделать?"... Как сделать что? Никто ниче не видит! Я не вижу, че ты хочешь в итоге, я не понимаю, че ты хочешь в итоге. Мне угадывать, что там, где ползать должно? И вообще, каким методом ты хочешь это реализовать, рисованием, или символами, или еще чем?..
Я че, блин, телепат, что ли?
0
36 / 36 / 4
Регистрация: 09.06.2008
Сообщений: 324
18.08.2008, 20:13 9
Под консоль графическая библиотека есть, но она поддержываеться не всеми компиляторами... Это 1... А 2... что бы зделать простую змейку в КОНСОЛЕ. Создай двух мерный массив который в последствии будет постоянно распечатываться... а что бы управлять змейкой, зделай проверку на нажатие клавишь(влево и вправо это относительно головы, можешь зделать относительно плостости влево, вправо, вверх, вних)... Но сама змея будет двигаться в цыкле... Тоесть ты будешь через каждую секунду очишать экран и прорисовывать игровое поле символами... А если нажата та или иная кнопка то изменяеться направление движения... А координаты и здвиг менять в зависимости от направления постоянно на еденицу в перёд...
0
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
14.09.2008, 17:13 10
Почитай по лучше тему Классы. если я верно понял, то что ты говоришь :: операция расширения области видимости.
Она используется при определении функций-членов за пределами объявления класса, а также для доступа к переменным которые в данной области видимости невидимы.
Вот небольшой пример
Код
#include <stdio.h>
float r=2.6;
int increment(int k) {
int r=k+15;
printf(“ В функции increment: значение r внутри increment = %d\n ”,r);
printf(“ В функции increment: значение r вне increment = %0.2f\n ”,::r);
return r;
}
void main(void){
int r=increment(20);
printf(“ В функции main: значение r внутри increment = %d\n ”,r);
printf(“ В функции main: значение r вне increment = %0.2f\n ”,::r);
}
Результат работы
В функции increment: значение r внутри increment = 35
В функции increment: значение r вне increment = 2.60;
В функции main: значение r внутри increment = 35
В функции main: значение r вне increment = 2.6
Или к примеру, когда класс ты пишешь в одном файле, а его функции в другом, то ему нужно же знать, к чему эти функции.
1 файл
Код
class Test
{
public:
                 void Print();
};
2 файл
Код
void Test::Print()
{
       //code here
}
Тем самым указав, что Print принадлежит классу Тест.
0
14.09.2008, 17:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.09.2008, 17:13
Помогаю со студенческими работами здесь

Карибский кризис
Приветствую, форумчане. Нужно создать модель Карибского кризиса (фактически это будет модель гонки...

Кризис жанра
Коллеги! У меня кризис жанра (а может, среднего возраста). Дело в том, что в свое время...

Творческий кризис
Есть конфигурация на 1С, она пингует выбранный диапазон сети и возвращает ip-шники в случае...

Текстурный Кризис
Драсьте! У меня какая-то фигня с игрой Crysis (включая и Crysis Warhead). А если точно - че-то,...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru