Nawigacja

Ostatnia aktywność w witrynie

Przykład metaprogramowania z użyciem szablonów (c++). Zbiór Mandelbrota.


W załączniku jest kod źródłowy programu, który wygenerował powyższy rysunek. Kod pokazuje jak wykorzystać szablony do wykonania kodu w czasie kompilacji. Program należy kompilować następująco:
g++ -ftemplate-depth-100000 mandelbrot_on_templates.cpp
oraz uzbroić się w cierpliwosć (u mnie kompilacja trwała nieco ponad 6m). Dla leniwych (i używających Linuksa) załączam także binarke.

Wynikowy obrazek zależy oczywiście od terminala. Powyższy zrzut pochodzi z edytora Emacs. Uruchomiłem program pod GDB, osadzonym w buforze Emacsa. W przypadku gdy terminal daje kiepski efekt należy przekierować wyjście z programu do pliku, po czym otworzyć plik w dobrym edytorze tekstu (np. GNU/Emacs czy Kate). Należy pamiętać, że zaznaczając tekst w większości edytorów można zrobić negatyw.

Ta strona jest załącznikiem do mojego bloga. Zapraszam na http://lmmilewski.blogspot.com/

--
Łukasz Milewski (lmmilewski)
Č
ċ
ď
mandelbrot.out
(424k)
Łukasz Milewski,
8 sie 2008 16:08
ċ
ď
mandelbrot_on_templates.cpp
(3k)
Łukasz Milewski,
8 sie 2008 16:03