An agile journey and beyond

Autor: Florian Mücke (Seite 2 von 3)

Guter Sangria

Auf unserer Hochzeitsreise haben wir in einem schönen Lokal am Hafen Sangría zum Essen getrunken – und der war ganz anders als ich bisher Sangría kannte – um längen besser.

Es war waren nur Zitronenscheiben und Orangenscheiben und jede Menge Eiswürfel und Zucker darin. Einfach wahnsinnig erfrischend.

Ein Rezept das diesem nahe kommt ist hier zu finden: Alles über Sangria

Oder man macht es wie folgt (Catalanische Variante):

Zutaten für vier Personen:

  • 1 Flasche spanischer Rotwein (vorzugsweise RIOJA, kann aber auch ein günstigerer sein)
  • Saft von mindestens zwei Orangen (ca. 100ml)
  • 100ml weißer Rum
  • 1 unbehandelte Zitrone
  • 1 unbehandelte Orange
  • 5 Eßlöffel Zucker
  • 1 Zimtstange
  • Eiswürfel

Zubereitung:

  1. Zitrone und Orange unter heißem Wasser abwaschen und dann in (halbe) Scheiben schneiden.
  2. Obststücke, Zucker, Rum und Orangensaft in eine Karaffe oder große Schüssel geben und dann ab damit zum Durchziehen in den Kühlschrank (mind. 1 Stunde).
  3. Dann den Rotwein drüber, die Zimtstange hinein und das ganze umrühren. Die Sangría eine weitere Stunde kalt stellen.
  4. Jetzt kommen noch ordentlich Eiswürfel dazu und die Sangría ist fertig zum servieren (am besten in großen Gläsern).

boost x64 Bibliotheken erzeugen

Um die x64-Libs von boost zu erzeugen muss man folgendes im boost Verzeichnis aufrufen:

bjam --toolset=msvc --address-model=64 --stagedir=stage64 stage

Zusätzliche Parameter

  • -jX um das Erstellen mit X Prozessen parallel zu starten
  • --build-type=complete baut alle libs (static, shared, mutithreaded,…)
  • --with-serialization baut nur die serialization Bibliotheken

Serialization weigert sich in 1.36.0 allerdings (in 1.40 gibt’s dieses Problem nicht mehr). Hierzu ist in der libs/serialization/build/Jamfile.v2 folgende Ersetzung vorzunehmen:

: requirements ../../config/test/all//BOOST_NO_STD_LOCALE

in

: requirements

sowie
../../config/test/all//BOOST_NO_STD_WSTREAMBUF am Ende der Datei auskommentieren (‚#‘).

bjam gibt’s hier: http://www.boost.org/users/download/

Danach sollten ein paar libs in stage64/lib liegen.

C++ Schlüsselwort „explicit“

Mit dem C++ Schlüsselwort „explicit“ kann man dem Compiler implizite Typumwandlungen verbieten. Dies kann manchmal ja auch ungewollt passieren, wie folgendes Beispiel zeigt:

#include 
#include 
struct MyClass
{
    MyClass(const char* name) : m_Name(name) {}
    virtual ~MyClass() {}
    const char* Who() const { return m_Name; }
private:
    const char* m_Name;
};

struct MyExplicitClass
{
    explicit MyExplicitClass(const char* name) : m_Name(name) {}
    virtual ~MyExplicitClass() {}

    const char* Who() const { return m_Name; }
private:
    const char* m_Name;
};


int main()
{
    MyClass A("a");
    MyExplicitClass B("b");
              
    A = "c";  // ok, hier funktioniert das, aber war das auch so gewollt? 
              // Auf den ersten Blick zu durchschauen ist diese Zuweisung jedenfalls nicht.

    B = "d";  // error C2679: Binärer Operator '=': Es konnte kein Operator gefunden werden, 
              // der einen rechtsseitigen Operanden vom Typ 'const char [2]' akzeptiert (oder
              // keine geeignete Konvertierung möglich)

    std::cout << "A: " << A.Who() << std::endl;
    std::cout << "B: " << B.Who() << std::endl;

    return 0;
}

Nützliches im Visual Studio #1

Multi-Zwischenablage

Eher zufällig bin ich beim Coden auf ein nettes Feature im Visual Studio (2008) gestoßen: VS hat eine mehrfache Zwischenablage auf die man mittels Shift+Ctrl+V zugreifen kann. Somit kann man auch auf Sachen zugreifen, die man eigentlich schon überschrieben hat.
vs2008_clipboard

Inkrementelle Datei-Suche

Mittels Ctrl+# gelangt man in das Suchen-Feld. Dort kann man mittels <of + Dateiname Dateien öffnen. Dabei werden alle Dateien der Solution inkrementell auf die Eingabe gematcht und in einer Combobox angeboten.

EIS auf code.google.com

EIS

Easy Installation System


Mein Installations-Tool, das Easy Installation System, ist jetzt auf Google Code verfügbar. EIS ist ein vollständiges Installationssystem, das in MASM32 geschrieben wurde. Es ist in deutsch und englisch verfügbar und für RAR-Dateien ausgelegt. Weitere Details auf der Projektseite: http://code.google.com/p/eis/

Die Entscheidung es OpenSource zu machen fiel, da ich leider nicht mehr genug Zeit habe es zu pflegen. Ich fände es allerdings schade, wenn das Projekt einfach so in der Versenke verschwinden würde.

Ich werde zwar versuchen, das Projekt weiter zu verwalten, aber viel Zeit kann und will ich dafür nicht mehr investieren.

Neue Fonts in der Windows Welt

Mittlerweile gibt es ein paar hübsche neue (offizielle) Fonts in der Windows-Welt abseits Arial und Times New Roman. Diese sollen vor allem aber auch besser für Cleartype (urks!) geignet sein.
Hierzu habe ich einen interessanten Artikel gefunden, der eine kurze Übersicht der neuen bietet. Am besten gefallen hat mir persönlich dabei die serifenfreie Schriftart Corbel und die Serifenschriftart Constantia. Die monospace-Schtriftart Consolas taugt in meinen Augen überhaupt nicht als Ersatz für die gute Courier New z.B. für Text-Editoren. In Präsentationen oder Dokumenten macht sie allerdings eine ziemlich gute Figur. Vor allem die kursive Variante ist deutlich schöner als die der Courier New. Cambria ist noch eine weitere Serifenschrift, die sich aufgrund ihrer Schnörkellosigkeit gut für offizielle Dokumente eignet.

Pure virtual function call

Eine abstrakte Klasse in C++ hat mindestens eine pure virtual Funktion (gekennzeichnet durch virtual ... = 0). Diese Funktionen können per Definition nicht direkt aufgerufen werden, da sie keine Implementierung haben (auch per Definition). Sollte die Methode dennoch aufgerufen werden, wird das Programm (von der Runtime) mit der Fehlermeldung „Pure virtual function call“ abgebrochen. Weiterlesen

« Ältere Beiträge Neuere Beiträge »