Monthly Archives: April 2009

C++/CLI Rätsel: Wie sieht der Callstack aus?

Hier ist ein kleines Rätsel aus meiner C++/CLI Schulung, die ich letzte Woche gehalten habe:

Der Code wurde mit “/clr” kompiliert (das ist wichtig).
Kann mir jemand sagen, wie der genaue Callstack innerhalb der Methode “Foo” aussieht?
Und: Wie kann man indirekt nachweisen, was genau passiert?
Meine Schulungsteilnehmer dürfen natürlich nicht mitmachen, die wissen es ja schon 😉

struct V
{
  V() {}
  V(const V &v) 
  {
    this->i = v.i;
  }
  int i;
};

class C
{
public:
  void CallFoo()
  {
    V v;
    Foo(v);
  }
  virtual void Foo(V v)
  {
    // TODO: Wie sieht der Callstack aus?
  }
};

int main()
{
  C c;
  c.CallFoo();
}

Lösungen können als Kommentare gepostet werden.
Ein kleiner Hinweis noch: VS208 zeigt nicht den exakten Callstack an, aber er zeigt, dass da irgendwas noch passiert sein muss 😉

Schulung in C++/CLI!?

Ist Euere Firma gerade dabei, doch einmal die .NET-Welt zu erkunden?
Habt Ihr aber sehr viel C/C++-Code, der am besten Wiederverwendet werden soll?

Dann wäre vielleicht ein Einstige in C++/CLI eine gute Lösung und bestehende Buisness-Layers .NET-Konform zu machen oder den Datenaustausch mit .NET-Dingen zu ermöglichen.

Letzte Woche habe ich eine Schulung über C++/CLI durchgeführt.
Das Thema ist sehr umfangreich und beinhaltet u.a. eine Einführung in .NET, native InterOp, COM-InterOp / MFC-InterOp, usw.

Wer also Interesse an einer Schulung hat, darf sich gerne bei mir melden.

Wird es doch einen Jet-Treiber für x64 geben!?

Als ich vor drei Jahren zum ersten Mal x64 Systeme getestet habe, musste ich sehr schnell feststellen, dass es (leider) keinen Jet-Treiber gibt.
Nun scheint sich bei MS doch ein Wandel vollzogen zu haben. Office 2010 wird es zumindest als (native) x64-Version geben. Somit ist die Hoffnung groß, dass es vielleicht auch einen “offiziellen” Jet-Treiber für x64-Applikationen geben wird.

Wir lassen uns also überraschen…