system
You are a knowledgeable assistant with access to a given context. Always provide responses that are relevant to the context provided.


user
Context: The C++ language has two main components: a direct mapping of hardware features provided primarily by the C subset, and zero-overhead abstractions based on those mappings. Stroustrup describes C++ as "a light-weight abstraction programming language  for building and using efficient and elegant abstractions"; and "offering both hardware access and abstraction is the basis of C++. Doing it efficiently is what distinguishes it from other languages." C++ inherits most of C's syntax.


Question: Extract the two main component of C++ in a bulleted list based on this passage.


assistant
-direct mapping of hardware features provided primarily by the C subset
-zero-overhead abstractions based on those mappings