How to use the Eigen library in C++

Motivation Working with matrices and vectors in C++ can be a bit cumbersome. The Eigen library is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. It is used in many scientific and engineering applications. Eigen is versatile, efficient, and easy to use. It supports all matrix sizes, from small…

Wie setze ich die C++ Version in CMake

Motivation Im Rahmen meines Udacity Nanodegree Robotics Software Engineer muss ich mit C++17 arbeiten, da ROS Noetic Ninjemys Sprachfeature von C++17 verwendet. Nun wollte ich wissen, wie ich die C++-Version in CMake setze. Top Level Cmake-Datei In der Top-Level CMake-Datei setze ich die C++-Version folgendermaßen: set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON)

Letzen winlogon mit win32evtlog auslesen

Motivation Unserer Zeiterfassungssoftware startet normalerweise beim Hochfahren des Rechners. Im Homeoffice kann es aber passieren, dass der VPN-Client nicht automatisch startet und die Zeiterfassung nicht funktioniert. Dann muss man die Arbeitszeit per Hand eintragen. Dazu schaue ich mir im Event Viewer das letzten winlogon-Event an. Um nicht mehr in der Ereignisanzeige suchen zu müssen, habe…

Funktionen asynchron ausführen – Modernes C++

Nachdem wir im letzen Artikel die Grundlagen von Threads und Multithreading kennengelernt haben, wollen wir uns in diesem Artikel mit asynchronen Funktionen beschäftigen. Dafür hat c++ einem header namens future im Gepäck. Dieser header enthält die Klasse std::future und die Funktion std::async. Wir inkludieren den Header und erstellen eine Funktion, die wir asynchron ausführen wollen.…

Einführung in Multithreading – Modernes C++

Was ist multithreading? Multithreading ist die Fähigkeit eines Prozessors, mehrere Threads gleichzeitig auszuführen. Ein Thread ist ein Pfad der Ausführung, der es einem Prozessor ermöglicht, mehrere Aufgaben gleichzeitig auszuführen. Die meisten Prozessoren können mehrere Threads gleichzeitig ausführen. Beispiel mit einem (zusätzlichem) Thread In diesem Beispiel wird ein zusätzlicher Thread gestartet, der eine Funktion ausführt. Um…