-
X-Received: by 10.140.105.54 with SMTP id b51mr6664qgf.29.1392735055080; Tue, 18 Feb
2014 06:50:55 -0800 (PST)
X-Received: by 10.140.105.54 with SMTP id b51mr6664qgf.29.1392735055080; Tue, 18 Feb
2014 06:50:55 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin2!goblin.stu.neva.ru!feed.news.qwest.net!mpls-nntp-01.inet.qwest
.net!news.glorb.com!c10no29313162igq.0!news-out.google.com!dr7ni182qab.1!nntp.g
oogle.com!f11no23406490qae.1!postnews.google.com!glegroupsg2000goo.googlegroups
.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Tue, 18 Feb 2014 06:50:54 -0800 (PST)
In-Reply-To: <4...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=93.154.242.188;
posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 93.154.242.188
References: <ldaa9r$3j5$1@speranza.aioe.org>
<9...@g...com>
<52fccceb$0$2362$65785112@news.neostrada.pl>
<6...@g...com>
<52fceef0$0$2140$65785112@news.neostrada.pl>
<1...@g...com>
<ldv7fu$3vq$1@dont-email.me>
<6...@g...com>
<a...@g...com>
<ldvj3g$28c$1@dont-email.me>
<6...@g...com>
<ldvqkt$bnu$1@dont-email.me>
<4...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c...@g...com>
Subject: Re: David West: OOP is Dead
From: firr <p...@g...com>
Injection-Date: Tue, 18 Feb 2014 14:50:55 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:205189
[ ukryj nagłówki ]#v+
////////////////////////////////
class Pixelbuffer {
// klasa zawierajaca bufor obrazu.
};
/////////////////////////////////////
class Window {
private:
MouseHandler& m;
KeyboardHandler& k;
public:
// wspolne funkcje, istniejace dla kazdego okna
// dodaje handler do okna
void addMouseHandler(Handler& h);
void addKeyboardHandler(Handler& h);
void draw(Costam& cos);
};
////////////////////////////////////////
class Blitter {
void blit(Window& win, Pixelbuffer& buf)
{
///...
}
};
////////////////////////////
class MouseHandler: public Handler {
void onClicked(Slot& callback, Point& position) {
callback.emit(position);
}
};
/////////////////////////////////
class Game {
private:
Pixelbuffer p;
Blitter& blit;
Window& w;
public:
Pixelbuffer& getBuffer() { return p; }
void blit() {
// dla każdego obiektu w grze, renderuje pixelbuffer dla tego obiektu
// też może być wprowadzony podział na klasy software/hardware
rendering
blit.blit(w, p);
}
void run() {
while(! done) {
doGame();
blit();
}
}
};
/////////////////////----
int main() {
Pixelbuffer p;
Game game(p);
HardwareBlitter blit; // lub: SoftwareBlitter, QuickBlitter, lub inne
blittery
Window gameWindow;
game.addWindow(gameWindow);
game.setBlitter(blit);
MouseHandler m;
KeyboardHandler k;
gameWindow.addMouseHandler(m);
gameWindow.addKeyboardHandler(k);
m.onClicked([&] (Point& mousePos) {
game.addSomeObject(mousePos);
});
gameWindow.show();
game.run(); // działa, np. dopóki gameWindow istnieje
return 0;
}
#v-
wycialem by bylo drobinke prosciej, wiadomo ze mozna rozbudowywac
Następne wpisy z tego wątku
- 18.02.14 16:01 firr
- 18.02.14 16:29 firr
- 18.02.14 16:59 firr
- 18.02.14 20:40 toslaw
- 18.02.14 23:21 firr
- 18.02.14 23:52 firr
- 19.02.14 07:57 toslaw
- 19.02.14 09:41 firr
- 19.02.14 10:54 firr
- 19.02.14 10:58 g...@g...com
- 19.02.14 11:30 firr
- 19.02.14 12:01 firr
- 19.02.14 14:32 firr
- 19.02.14 15:51 A.L.
- 19.02.14 16:10 A.L.
Najnowsze wątki z tej grupy
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
Najnowsze wątki
- 2026-01-02 Szalejąca dyskryminacja obywateli USA w Maili i Burkina Faso. Czy to legalne?
- 2026-01-02 Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- 2026-01-02 Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- 2026-01-02 Kogo KE opierdoli za nieskuteczną cenzurę? [Rząd tuski doniósł]
- 2026-01-02 Gdańsk => Konsultant Microsoft Dynamics AX/365 SCM Consultant - Servi
- 2026-01-02 Gdańsk => Solution Architect (Workday) - Legal Systems <=
- 2026-01-02 Gdańsk => Microsoft Dynamics 365 Finance Consultant <=
- 2026-01-02 Microsoft, C/C++ na Rust - news
- 2026-01-01 szyby macie całe?
- 2026-01-01 Najbogatsi ludzie na świecie są jeszcze bogatsi. Bezprecedensowa skala zysków
- 2026-01-01 Najbogatsi ludzie na świecie są jeszcze bogatsi. Bezprecedensowa skala zysków
- 2026-01-01 Wszystkiego najlepszego
- 2025-12-31 Czy potrafisz wskazać różnice? [TVN v. RMF]
- 2025-12-31 I kolejny jebnięty
- 2025-12-31 Myślenice => Specjalista ds. kontrolingu <=




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]