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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> разбить программу на модули 
:(
    Опции темы
LinuxanT
Дата 20.2.2008, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



имееться главная    main.cpp и надо чтобу она видела функцию , которая находиться в другом ***.cpp
через файл **.h

попробовал так 

#include "**.h"  к  обоим **.cpp
потом в **.h указал просто void func  (int ***, int **)
написал функцию в ***.cpp 

но она не видит переменные которые туда отправляються...
как задать переменные?? (указателями может ) или я где то ошибаюсь... 
может где то понятно написано это??

и еще вопрос глобальные переменные можно в .h описать?



Это сообщение отредактировал(а) LinuxanT - 20.2.2008, 11:53
PM MAIL   Вверх
Mayk
Дата 20.2.2008, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

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



Цитата(LinuxanT @  20.2.2008,  15:51 Найти цитируемый пост)

но она не видит переменные которые туда отправляються...

Что значит "не видит"?


--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
LinuxanT
Дата 20.2.2008, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



говорит не инициализированны..




**.h
Код


void initD3D(HWND hWnd); // задаем и инициалируем директх



связываюшая функция
Код

#include "***.h"

void initD3D(HWND hWnd)
{
    d3d = Direct3DCreate9(D3D_SDK_VERSION); // создание главного объекта Direct3D
/*Через главный объект мы не можем производить вывод графики.
    Используя его, мы можем только узнать возможности и специфическую 
    информацию о видеокарте и создать устройство, представляющее видеоадаптер. 
    А вот уже с помощью устройства мы можем рисовать, накладывать текстуры, 
    освещать сцену и т.д.
    */

    D3DPRESENT_PARAMETERS d3dpp;  // создаем структуру для получения информации о гр модулях

    ZeroMemory(&d3dpp, sizeof(d3dpp));    //очишаем память для использования 
    d3dpp.Windowed = FALSE;    // программа полноэкранная 
    d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;    // исключаем старые кадры
    d3dpp.hDeviceWindow = hWnd;    // задаем окно которое будет использовать Direct3D
    d3dpp.BackBufferFormat = D3DFMT_X8R8G8B8;    // задает заднему буферу  32-bit
    d3dpp.BackBufferWidth = SCREEN_WIDTH;    // задает ширину заднего буфера
    d3dpp.BackBufferHeight = SCREEN_HEIGHT;    // задает высоту заднего буфера

    // создаем устройство используешее эту информацию 
    d3d->CreateDevice(D3DADAPTER_DEFAULT,
                      D3DDEVTYPE_HAL,
                      hWnd,
                      D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                      &d3dpp,
                      &d3ddev);

    return;
}




Error    1    error C2065: 'd3d' : undeclared identifier    c:\documents and settings\lin\мои документы\visual studio 2005\projects\проекты и исходники\проекты и исходники\22.cpp    7
Error    5    error C2065: 'd3ddev' : undeclared identifier    c:\documents and settings\lin\мои документы\visual studio 2005\projects\проекты и исходники\проекты и исходники\22.cpp    31

они описана в мейн ..

главная

Код

#include "***.h"
глобальные переменные
//объявлении указателя на главный интерфейс IDirect3D9 и указателя на интерфейс устройства

[color=red]LPDIRECT3D9 d3d; // указатель на r Direct3D interface
LPDIRECT3DDEVICE9 d3ddev;  // указатель на  device class[/color]

winmain и дт
{

initD3D(hWnd);


}



Добавлено через 8 минут и 45 секунд
extern LPDIRECT3D9 d3d; // указатель на r Direct3D interface
extern LPDIRECT3DDEVICE9 d3ddev;  // указатель на  device class

надо было..все работает  smile 

[censored 6].. пока сдесь не напишу не решу проблемму.. ужас.. ((( 

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


Звукач ёмаё
**


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

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



LinuxanT, одна тема - один вопрос. Запомни!


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

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


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

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


 




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


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

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