Einzelnen Beitrag anzeigen

Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#9

AW: Generische Ableitung einer Klasse

  Alt 5. Jul 2011, 15:51
D.h. es wird voraussichtlich niemals einen Compiler geben, der sowas zulässt.
Ich hab mal den guten alten BCC55 und meine eingerosteten C++-Kenntnisse rausgekramt und folgendes produziert:
Code:
#include <iostream>
#include <string>

class MyClass
{
public:
  int blubb;
};

class YourClass
{
public:
  std::string blah;
};

template <typename T>
class TThreadedObject: public T
{
public:
  TThreadedObject() { std::cout << "lock" << std::endl; };
  ~TThreadedObject() { std::cout << "unlock" << std::endl; };
};

int main()
{
  TThreadedObject<MyClass> tb;
  TThreadedObject<YourClass> ty;
  tb.blubb = 42;
  ty.blah = "Hallo";
  std::cout << tb.blubb << std::endl;
  std::cout << ty.blah << std::endl;
}
Das lässt sich compilieren, läuft und spuckt erwartungsgemäß
Code:
lock
lock
42
Hallo
unlock
unlock
aus. Ich denke, das ist vom Prinzip her, das was der OP gerne hätte. So eine Art Mixin.
Uli Gerhardt
  Mit Zitat antworten Zitat