C++Guns – RoboBlog

29.01.2016

Programm Environment Modules

Filed under: Allgemein — Thomas @ 16:01

touch dpkg -l | grep tcl ii libtcl8.5:amd64 8.5.17-1 amd64 Tcl (the Tool Command Language) v8.5 - run-time library files ii libtcl8.6:amd64 8.6.2+dfsg-2 amd64 Tcl (the Tool Command Language) v8.6 - run-time library files ii tcl 8.6.0+8 amd64 Tool Command Language (default version) - shell ii tcl-dev:amd64 8.6.0+8 amd64 Tool Command Language (default version) - […]

26.01.2016

Evaluation of logical operations

Filed under: Allgemein — Tags: , , — Thomas @ 21:01

Spass mit dem Standard. Aus dem Fortran 90/95 Standard [1] Kapitel 7.1.7.6. Evaluation of logical intrinsic operations The rules given in 7.2.4 specify the interpretation of logical intrinsic operations. Once the interpretation of an expression has been established in accordance with those rules, the processor may evaluate any other expression that is logically equivalent, provided […]

24.01.2016

Warum (kurze) Arrays in Fortran (und C/C++) nicht immer die richtige Wahl ist

Filed under: Allgemein — Tags: — Thomas @ 22:01

Der Name ist Programm. Heute mal tex und pdf Version. wkfanidrwi.pdf \documentclass[]{article} \usepackage{listings} \usepackage[utf8]{inputenc} \usepackage{ngerman} %opening \title{Warum (kurze) Arrays in Fortran (und C/C++) nicht immer die richtige Wahl ist} \author{Thomas Huxhorn} \begin{document} \maketitle \tableofcontents \begin{abstract} In diesem kleinen Artikel lege ich ein paar Gedanken nieder über einen Fehler mit (kurzen) Arrays, der systematisch immer wieder […]

21.01.2016

template loop mit rekursion

Filed under: Allgemein — Thomas @ 09:01

Einfache Schleifen mit Templates funktionieren mittels Rekursionen. Das ist auf dem ersten Blick etwas ungewöhnlich, aber letzendlich doch nur eine Schleife. Wir muessen die Anzahl an Iterationen aber zur Compilezeit vorgeben! Entweder per Template Parameter oder constexpr. Normal würde man Parameterlisten packen/unpacken oder was man sonst in einer Schleife macht. Ich möchte aber N mal […]

14.01.2016

std::normal_distribution

Filed under: Allgemein — Tags: — Thomas @ 16:01

Wie baut man aus gleichverteilen Zufallszahlen normalverteile? Man nimmt std::normal_distribution http://en.cppreference.com/w/cpp/numeric/random/normal_distribution Und wie ist das Implementiert? Eine Beispielimplementation gibt es in der gnu stdc++ https://gcc.gnu.org/onlinedocs/gcc-4.7.4/libstdc++/api/a01267_source.html#l01678 Wtf? Versteht kein Mesch. Das Paper auf dass die sich beziehen ist auch ein Hammer. http://www.eirene.de/Devroye.pdf Seite 249 Hier die Template bereinigte Version vom GNU #include <iostream> #include <iomanip> #include […]

03.01.2016

XKCD 1188 BOUNDING

Filed under: Allgemein — Tags: — Thomas @ 22:01

http://xkcd.com/1188/ Lame Segfault. #include <exception> using namespace std; struct Ball : public exception { }; struct P { P* target; void aim(const Ball& ball) { try { throw ball; } catch(Ball& ball) { target->aim(ball); } } }; int main() { P parent; P child{&parent}; parent.target = &child; parent.aim(Ball()); }

01.01.2016

rvalues, lvalues, xvalues, glvalues, prvalues WTF??

Filed under: Allgemein — Tags: — Thomas @ 20:01

Sehr zu empfehlen: http://www.stroustrup.com/terminology.pdf int prvalue(); int& lvalue(); int&& xvalue(); void foo(int&& t) { // t is initialized with an rvalue expression // but is actually an lvalue expression itself } — An lvalue (so called, historically, because lvalues could appear on the left-hand side of an assignment expression) designates a function or an object. […]

Powered by WordPress