Compatibility with the C++ Standard

Google has developed many abstractions that either match or closely match features incorporated into C++14, C++17, and beyond. Using the Abseil versions of these abstractions allows you to access these features now, even if your code is not yet ready for life in a post C++11 world.

C++ Standards Compatibility

Upgrade Support

If your code behaves according to our compatibility guidelines, we will do our best not to break you.

Upgrade Support

Production Experience

The libraries we are releasing come with a pedigree: many years of experience using these APIs in Google’s production environments. We’ve seen what works and what doesn’t, what designs lead to bugs, performance problems, and misuse. What you see here is what we found to be a good balance between simplicity and meeting the needs of production use and an ever-evolving codebase.

Production Experience

Design Priorities

If your use cases are “normal” (or at least, in-line with what we’ve found to be normal), Abseil provides a useful counterpoint to the designs chosen by the C++ standard. When we put out something that conflicts with the standard, we’ll be clear about why we are diverging and try our best to remain interoperable.

Design Priorities

Want to start programming?

Go straight to the C++ Quick Start:

C++