July 2006 Archives
2006-07-24
Festplattenverschlüsselung
Eine /dev/readio Sendung zum Thema Festplattenverschlüsselung
mit ein wenig Werbung für grml :-)
2006-07-21
undefined bahaviour trap
Quote from www.boost.org:
The C++ Standard allows, in 5.3.5/5, pointers to incomplete class types to be deleted with a delete-expression. When the class has a non-trivial destructor, or a class-specific operator delete, the behavior is undefined. Some compilers issue a warning when an incomplete type is deleted, but unfortunately, not all do, and programmers sometimes ignore or disable warnings.So, for instance, this snippet shows a hard to track bug if the compiler doesn't warn:
class A;
void foo(A* a)
{
delete a;
}
class A {
public:
~A() { }
};
int main()
{
A* a = new A();
foo(a);
}
2006-07-21
abstract destructor needs implementation
A pure virtual - or abstract - destructor needs an implementation in C++. For example this program does not link because of "undefined reference to A::~A".
class A {
public:
virtual ~A() =0;
};
class B : public A { };
int main()
{
B b;
}
This contradicts the definition of abstract functions. As on the one hand there is no other way to make a class whithout methods abstract and on the other hand a destructor must always be available there is no way out.
As far as I can see this is the consequence of Stroustrup's decision to not introduce too much new key words in order to not brake too much old C code.
Seen on "Scott Meyers, Effective C++, Item 14".
2006-07-17
Diplomarbeit
Diplomarbeit an der Uni Ulm, Abteilung Telekommunikation und angewandte Informationstheorie.
Durch den großen Umfang besteht die Diplomarbeit aus zwei Teilen. Einer von mir und einer von Stephanie Wist.
- Design und Implementierung eines Frameworks für Simulationen in der Kanalcodierung mit Anbindung an ein verteiltes System
- Entwurf und Implementierung eines verteilten Systems mit Benutzerschnittstelle zur Erstellung, Verteilung und Verwaltung von Simulationen in der Kanalcodierung
- Sourcen des kompletten Projektes (GPL 2.0, not later)