Skocz do zawartości

Wskaźniki, Klasy...


Gość sabby7890

Rekomendowane odpowiedzi

Gość sabby7890

Witam,

 

Tak sobie oto chciałem popisać coś, co mobilizowałoby mnie do dalszej nauki języka - C++ :)

 

Wymyśliłem sobie więc coś, co mogę pisać w nieskończoność, ale czego pisanie nigdy nie będzie nudne i dużo się przy tym nauczę - to jest oczywiście tylko nauka, tego niestety nikt nie skończy:)

 

Piszę sobie taką biblioteczkę którą nazwałem libdx - wrapper DirectX -> SDL/OpenGL. Udało mi się nawet skompilować prosty tutorial DirectDraw pod Linuksem - inicjalizacja i przejście w tryb pełnoekranowy, 640x480:) Nie ma obsługi komunikatów itp, więc po wycięciu wszystkich komunikatów programik mi się po prostu zawiesza (wchodzi w nieskończoną pętlę)

 

Chciałbym, aby moja biblioteka wymagała jak najmniejszej liczby zmian w kodzie, dlatego mam parę pytań:)

 

int WINAPI WinMain

<-- funkcja główna programów win

 

Zrobiłem

 

#define WinMain main

 

Teraz program mi się odpala po wykasowaniu WINAPI (WinMain zamieniane jest na main), lecz co zrobić, by działał razem z WINAPI?

 

Drugie pytanie:

 

LPDIRECT3D9 lpDD;
    lpDD = Direct3DCreate9( D3D_SDK_VERSION );

 

lpDD to obiekt główny Direct3D. Wszystko jest ok, przeciążyłem operator= (nagłówek mam ze strony Microsoftu, więc znajdują się tam wszystkie funkcje:) ), jednak nie mogę rozkminić jednej rzeczy:

 

lpDD->CreateDevice(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,uchwyt, D3DCREATE_HARDWARE_VERTEXPROCESSING,d3dpp,&lpd3dev);

 

Przecież -> mówi nam, że lpDD to wskaźnik, a wskaźnikiem nie jest. Programy te jednak pod

Win się kompilują i działają. Co z tym zrobić?:)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...