# Acronyms

From cppreference.com
< cpp‎ | language

Acronym | Full name | See also
--- | --- | ---
AAA | Almost Always Auto | GOTW #94
ABC | Abstract Base Class |
ABI | Application Binary Interface | Itanium C++ ABI
ADL | Argument-Dependent Lookup |
ADT | Abstract Data Type |
AFO | Algorithm Function Objects | CPO
API | Application Programming Interface |
BMI | Binary Module Interface | Modules
CAS | Compare-And-Swap; Copy And Swap | `compare_exchange`
CMI | Compiled Module Interfaces | Modules
COW | Copy-On-Write |
CPO | Customization Point Object | [customization.point.object], RangeAdaptorObject, RangeAdaptorClosureObject, AFO
CRTP | Curiously Recurring Template Pattern | std::enable_shared_from_this, std::ranges::view_interface
CTAD | Class Template Argument Deduction |
CTRE | Compile-Time Regular Expressions | CTRE lib
CWG | The Core Working Group | WG21
DCL | Double-Checked Locking | Concurrency support library
DIS | Draft International Standard | See also FDIS
DR | Defect Report |
EBO EBCO | Empty Base (Class) Optimization | `[[no_unique_address]]`, std::allocator, std::default_delete
EDG | Edison Design Group |
EH | Exception Handling |
ELF | Executable and Linkable Format |
EWG | The Evolution Working Group | WG21
EWGI | The Evolution Working Group Incubator | WG21
FAM | Flexible Array Member |
FDIS | Final Draft International Standard | See also DIS
GCC | GNU Compiler Collection |
GMF | Global Module Fragment | Modules
HALO | Heap Allocation eLision Optimization | Coroutines, P0981
ICE | Internal Compiler Error; Integer Constant Expression |
IFNDR | Ill-Formed, No Diagnostic Required |
IIILE | Immediately Invoked Initializing Lambda Expression |
IPO | Inter-Procedural Optimization |
IWYU | Include What You Use | libclang-based tool
LEWG | The Library Evolution Working Group | WG21
LEWGI | The Library Evolution Working Group Incubator | WG21
LTO | Link-Time Optimization |
LWG | The Library Working Group | WG21
MDT | Most Derived Type |
MPSC | Multi-Producer Single-Consumer (e.g., task queue) | std::executor
MSVC | MicroSoft Visual C++ |
NAD | Not A Defect | See also DR
NDR | No Diagnostic Required |
NRVO | Named Return Value Optimization |
NSDMI | Non-Static Data Member Initialization |
NTBS | Null-Terminated Byte Strings |
NTTP | Non-Type Template Parameter |
NUA | No Unique Address | `[[no_unique_address]]`
NVI | Non-Virtual Interface |
ODR | One Definition Rule |
OOP | Object-Oriented Programming |
PCH | Pre-Compiled Header | gcc doc on PCH
PDO | Profile-Driven Optimization | See also PGO
PGO | Profile-Guided Optimization | See also PDO
PID | Process IDentifier | `std::thread::get_id()`, `std::jthread::get_id()`
PIMPL | Pointer to IMPLementation |
PMF | Private Module Fragment | Modules
PMR | Polymorphic Memory Resources | `<memory_resource>`
POCCA | Propagate on Container Copy Assignment |
POCMA | Propagate on Container Move Assignment |
POCS | Propagate on Container Swap |
POD | Plain Old Data (PODType) | ScalarType, TrivialType, StandardLayoutType
QoI | Quality of Implementation |
RAII | Resource Acquisition Is Initialization |
RACO | Range Adaptor Closure Object | RangeAdaptorClosureObject
RAO | Range Adaptor Object | RangeAdaptorObject
RCU | Read-Copy-Update | `<rcu>`
RTTI | RunTime Type Identification | std::type_info
RVO | Return Value Optimization |
SBO | Small Buffer Optimization |
SBRM | Scope-Bound Resource Management, see RAII |
SCARY | Seemingly erroneous (appearing Constrained by conflicting generic parameters), but Actually work with the Right implementation (unconstrained bY the conflict due to minimized dependencies). | stroustrup.com/SCARY
SEH | Structured Exception Handling | SEH
SFINAE | Substitution Failure Is Not An Error | std::enable_if, std::void_t
SIMD | Single Instruction Multiple Data | Data-parallel types (SIMD)
SIOF | Static Initialization Order Fiasco |
SMF | Special Member Function |
SOCCC | Select On Container Copy Construction |
SOO | Small Object Optimization | std::move_only_function, std::function, std::any
SSO | Small String Optimization | std::basic_string
STL | The Standard Template Library |
TCO | Tail Call Optimization |
TLS | Thread-Local Storage | `thread_local`
TMP | Template Meta Programming | `<type_traits>`
TU | Translation Unit | Modules, TU-local
UB | Undefined Behavior |
UDC | User-Defined Conversion operator |
UDL | User-Defined Literals |
UFCS | Universal Function Call Syntax | “What is UFCS anyway?”
VLA | Variable-Length Array | SO on VLA
WPO | Whole-Program Optimization |

### External links

“A C++ acronym glossary” by Arthur O’Dwyer, 2019/08

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/language/acronyms&oldid=179954"