Please enable JavaScript in your browser to enjoy WordPress.com.
Dosyć często słyszy się, że programy pisane w C++ są szybsze od tych pisanych w C#. Głównym powodem takiego stanu rzeczy ma być fakt, że kod pisany w C++ jest kompilowany bezpośrednio do kodu natywnego, natomiast w przypadku C# programy działają na platformie .NET. Co za tym idzie, pisząc aplikację w C++ musimy sami zadbać o rzeczy takie jak na przykład zarządzanie pamięcią. Środowisko .NET robi tego typu rzeczy za nas (Garbage Collector). Niewątpliwie oszczędza to masę czasu p...
Daj się poznać 2017 2813 dni, 3 godziny, 43 minuty temu 396 źrodło rozwiń
Różnica pomiędzy ?: a ?? w nawiązaniu do posta http://rph-blog.pl/view/9/ pod tytułem "Niezwykły operator ternarny ?: w C++". Dementujemy kłamstwa.
Sztuka programowania 2847 dni, 22 godziny, 33 minuty temu 192 źrodło rozwiń
Kolejne zadanie rekrutacyjne na tapecie. Autor przedstawia kilka możliwych rozwiązań, wraz z analiza wad i zalet każdego z rozwiązań.
Sztuka programowania 3016 dni, 4 godziny, 17 minut temu 300 źrodło rozwiń
Krok po kroku opis rozwiązania zadania rekrutacyjnego. Zaczynamy od rozwiązania najprostszego i stopniowo je poprawiamy. Przykłady w c++
Sztuka programowania 3016 dni, 23 godziny, 42 minuty temu 483 źrodło rozwiń
Using multiple graphic apis by one interface
Daj się poznać 2016 3148 dni, 19 godzin, 49 minut temu 41 źrodło rozwiń
O tym jak dodać Vulkana do projektu w CMake
Daj się poznać 2016 3172 dni, 2 godziny, 53 minuty temu 90 źrodło rozwiń
Daj się poznać 2016 3174 dni, 3 godziny, 51 minut temu 56 źrodło rozwiń
Druga część tworzenia wrappera C++owej biblioteki dla C# przy użyciu C++/CLI. W tym odcinku pin_ptr oraz przekazywanie tablicy między C# i C++ bez kopiowania za pomocą samych wskaźników.
Daj się poznać 2016 3182 dni, 21 godzin, 33 minuty temu 96 źrodło rozwiń
Mamy już skompilowanego liba, do którego będziemy tworzyć wrapper aby później użyć go w C#. Tworzymy więc nowy projekt Dodajemy wszystkie pliki .h z wcześniejszego projektu: Teraz dodajemy skompilowaną bibliotekę w C++, którą chcemy podlinkować. W tym celu ustawiamy Include Directories we właściwościach projektu: (możemy też skopiować skompilowaną bibliotekę bezpośrednio do katalogu z kodem źródłowym naszego wrappera, wtedy nie musimy tu nic zmieniać) Wskazujemy też nazwę pliku ...
Daj się poznać 2016 3195 dni, 23 godziny, 50 minut temu 161 źrodło rozwiń
More experience I gain, more interested I am in how things work underneath the code level. In this post I want to provide short description of the Top 10 programming languages (by TIOBE Index), how they work and their super short history.
Sztuka programowania 3758 dni, 23 godziny, 57 minut temu 441 źrodło rozwiń
June was a month of conferences for .NET developers! We had Tech Ed North America, Norwegian Developers Conference, Tech Ed Europe and bunch more, but the biggest one was Microsoft Build Developer Conference.
Programiści niskopoziomowi często narzekają na brak pewnych możliwości w C# znanych im z C++ (często ze względu na brak znajomości ich odpowiedników w C#. Po dzisiejszej rozmowie z kolegą na ten temat stwierdziłem, że pokażę jak wykorzystać takie funkcje jak memset, a przy okazji jak pisać biblioteki DLL w C++ dla C# i jak z nich korzystać. Sprawdzimy także, czy zastosowanie takich bibliotek przyśpieszy działanie...
Sztuka programowania 4314 dni, 23 godziny, 34 minuty temu 317 źrodło rozwiń
Całkiem niedawno napisałem krótki artykuł, gdzie wykorzystałem koncepcję wyrażeń lambda i w oparciu o nie zbudowałem prosty system zdarzeń dla okienek Windows. Wyrażenia Lambda wprowadzone wraz z C++0x są na tyle uniwersalnie zbudowane, że z łatwością mogą być skonsumowane przez algorytmy ze standardowej biblioteki STL. Oto przykład z find_if:
Autor: Poprzednim razem pisałem dla tych, którzy marzą, że po nauczeniu się jakiegoś języka programowania, szybko zapełnią swój garaż nowymi modelami Ferrari, Astona Martina czy Lamborghini. Tym razem postaram się skupić bardziej na odpowiedzeniu na pytanie ludziom, którzy wyżej stawiają sobie własny rozwój niż ciągnący się za nimi tłum piszczących nastolatek. Źle. Kto widział żeby za programistami gani...
To jest kolejny wpis na przyszły tydzień ;-), albo jeśli ktoś woli niech tydzień blogowania zaczyna się od niedzieli ;-). Teraz napiszę o InteliGUI, nowym pomyśle na zastosowanie sieci Hopfielda. W całym przedsięwzięciu chodzi o to, żeby uzyskać inteligentne GUI tzn. takie które będzie się uczyć sekwencji jakich używamy i samo będzie proponować co chcemy zrobić na podstawie kilku kroków. Oczywiście to rozwiązani jakie opiszę...
Autor: C++. I mógłbym w tym momencie zakończyć wpis, wszyscy by się ze mną zgadzali, a mała grupka fanatyków tego reliktu przeszłości by płakała po kontach jak to znowu wszyscy dyskryminują ich narzędzie pracy. Gdyby nie dwa ale. Pierwsze ale: jestem wrednym skurczybykiem, który czasami stara się wyjrzeć poza własne podwórko i przeważnie nie lubi się zgadzać z tym co gada tłum (bo tłum to bezmyślne stado baranów)....
Dzisiaj opiszę sposób, jaki zastosowałem by przechwycić pierwszy wyjątek. Czasem w aplikacji czegoś nie przewidzimy i wyleci nam na wyjątku, dobrze wtedy zalogować ten fakt w jakimś pliku tekstowym lub e dzienniku systemu Windows. Należy też przekazać informację użytkownikowi, aby mógł w razie problemu skopiować komunikat z wyjątku i stos wywołań abyśmy wiedzieli gdzie aplikacja wyleciała. Nowy instalator z tą funkcjonalnoś...
Dziś chciałbym zaprezentować zastosowanie sieci Hopfielda do rozpoznawania polskich banknotów. Można zastosować takie rozwiązanie w automacie przyjmującym banknoty w celu odgadnięcia właściwego nominału banknotu. Oczywiście zapamiętanie obrazka całego banknotu nie jest dobrym pomysłem gdyż w przyzwoitej rozdzielczości obraz będzie zbyt duży do zapamiętania, poza tym, banknoty mają różną wielkość, postanowiłem pokazać przykład z zapamiętaniem prawego górnego rogu i rozpoznawaniem ...
Programowanie rozproszone 5207 dni, 13 godzin, 40 minut temu 170 źrodło rozwiń
OpenMP - źródło, które zainspirowało mnie do zmian w HopfieldSymulatorze znajduje się tudaj. Dzisiaj napiszę o C++ w wykorzystanym projekcie. Cała warstwa obliczeniowa jest napisana w tym języku. Oczywiście po napisaniu dobrze jest program zoptymalizować, można jeśli używamy C# i kodu zarządzalnego użyć Parallel.For(...), no ale w czystym natywnym C++ nie ma takij możliwości, pozostaje użycie OpenMP lub wzorców wielowątkowości, które są dostępne w Visual C++ 2010. Niestety nie mam ...
Programowanie rozproszone 5209 dni, 21 godzin, 17 minut temu 54 źrodło rozwiń