I just read a discussion thread on LinkedIn where this very same topic was being bounced around. The sentiment of the commentators, until I arrived that is <evil grin>, was that it would be easier for a Test Engineer to make a transition from Object Oriented programming (i.e. C++) to procedural programming (Ruby, Python, Perl). I challenge that thought and believe that learning a procedural language before indulging in the OO world would be far more beneficial.
Further I'd argue that a person that learns a procedural language before diving into OO would have a much easier time learning OO principles since they would already be familiar with at least one part of the equation (i.e. procedures).
Procedural languages are actually a very good fit for automation. Since tests are usually a set of procedures performed with test data that is usually external (if you want to achieve any kind of repetition in your tests that is), tests can be designed with ease.
And further, further more :) you can design your tests using an object oriented approach in Ruby, Python or Perl see below links:
That's not to say that you cannot do any of these things or learn the same principles in C++, but the question is, why would you? All the tools you'd be using already support the same Object Oriented principles that in the future you'll be able to apply when diving into C++ if you so desire.