[ace-users] ACE_String vs. std:string

Steve Huston shuston at riverace.com
Mon Jul 9 15:26:50 CDT 2007

Hi Michael,

> I apologize if this has been asked a million times.

No problem.

> Could anyone please comment on the differences between
> ACE_String_Base and std::string.

One is standard, and one isn't ;-)
The ACE_String_Base class was put in place for using strings when it
was not possible to portably use std::string (which may still be the
case) across all platforms that ACE runs on.

So, although std::string is standard, ACE_String_Base may be more
portable, depending on your target platform(s).

> Of particular
> interest is thread safety (Linux, latest gcc) and
> performance.

Neither offer any way to protect against multi-threaded access, if
that's your concern.

I don't have any performance numbers... The best bet here is to write
up a test that matches your intended use cases and measure them.

Best regards,

Steve Huston, Riverace Corporation
Would you like ACE to run great on your platform?
See http://www.riverace.com/sponsor.htm

More information about the Ace-users mailing list