One 45 min phone interview followed by on site interview with three team members.
The phone interview was quite easy. Standard technical C++ questions related to exceptions (what happens when a destructor or constructor throw one, what are virtual functions, etc). Nothing very difficult. He also asked what books about C++ and which important C++ people/blogs I follow.
In person interview went well I thought. The first interviewer asked me to implement merge sort. The other question was to find k largest values in a very big vector efficiently. The second interviewer asked me to design an interface to a function (or a class) that finds a zero of a give function and he wanted to see the most general interface possible. The third interviewer, the guy who I had the phone interview with asked me about smart pointers and writing an exception safe assignment operator. All three were very nice and guided me through the process. I did stumble on few of the questions but eventually ended up answering all of them.