Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/language/acronyms"

From cppreference.com
< cpp‎ | language
(Add RTTI acronym for Runtime type identification)
(Undo revision 177421 by Ybab321; disagree: SCARY is a technical term appearing in proposals, library code, books etc, and when attributed, people link to n2911 which claims it's an acronym. Maybe add linebreaks?)
 
(46 intermediate revisions by 15 users not shown)
Line 2: Line 2:
 
{{cpp/language/navbar}}
 
{{cpp/language/navbar}}
  
{| class="wikitable"
+
{|class="wikitable"
!Acronyms
+
!Acronym
!Full names
+
!Full name
 
!See also
 
!See also
 +
|-
 +
|AAA
 +
|Almost Always [[cpp/keyword/auto|Auto]]
 +
|[https://herbsutter.com/2013/06/13/gotw-94-special-edition-aaa-style-almost-always-auto GOTW #94]
 +
|-
 +
|ABC
 +
|{{rlp|abstract class|Abstract Base Class}}
 +
|
 +
|-
 +
|ABI
 +
|{{enwiki|Application Binary Interface}}
 +
|[https://itanium-cxx-abi.github.io/cxx-abi/abi.html Itanium C++ ABI]
 
|-
 
|-
 
|ADL
 
|ADL
|{{rlp|adl | Argument-dependent lookup}}
+
|{{rlp|adl|Argument-Dependent Lookup}}
 
|
 
|
 
|-
 
|-
|CTAD
+
|ADT
|{{rlp|class_template_argument_deduction | Class Template Argument Deduction}}
+
|{{enwiki|Abstract Data Type}}
 
|
 
|
 +
|-
 +
|API
 +
|{{enwiki|Application Programming Interface}}
 +
|
 +
|-
 +
|BMI
 +
|Binary Module Interface
 +
|{{rlp|modules|Modules}}
 +
|-
 +
|CAS
 +
|{{enwiki|Compare-And-Swap}}; [https://stackoverflow.com/questions/3279543/what-is-the-copy-and-swap-idiom Copy And Swap]
 +
|{{ltt|cpp/atomic/atomic/compare_exchange}}
 +
|-
 +
|CMI
 +
|Compiled Module Interfaces
 +
|{{rlp|modules|Modules}}
 +
|-
 +
|COW
 +
|{{enwiki|Copy-On-Write}}
 +
|
 +
|-
 +
|CPO
 +
|[[cpp/ranges/cpo|Customization Point Object]]
 +
|[https://eel.is/c++draft/customization.point.object#1 &#91;customization.point.object&#93;], {{named req|RangeAdaptorObject}}, {{named req|RangeAdaptorClosureObject}}
 
|-
 
|-
 
|CRTP
 
|CRTP
|{{rlp|crtp | Curiously Recurring Template Pattern}}
+
|{{rlp|crtp|Curiously Recurring Template Pattern}}
|{{lc|std::enable_shared_from_this}}
+
|{{lc|std::enable_shared_from_this}}, {{lc|ranges::view_interface|std::ranges::view_interface}}
 
|-
 
|-
|EBO
+
|CTAD
|{{rlp|ebo | Empty Base Optimization}}
+
|{{rlp|class template argument deduction|Class Template Argument Deduction}}
|{{lc|std::allocator}}, {{lc|std::default_delete}}
+
|
 +
|-
 +
|CTRE
 +
|'''C'''ompile-'''T'''ime '''R'''egular '''E'''xpressions
 +
|[https://github.com/hanickadot/compile-time-regular-expressions A CTRE lib]
 +
|-
 +
|CWG
 +
|The '''C'''ore '''W'''orking '''G'''roup
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-id="DR"
 +
|DR
 +
|Defect Report
 +
|
 +
|-
 +
|EBO<br>EBCO
 +
|{{rlp|ebo|Empty Base (Class) Optimization}}
 +
|{{attr|no_unique_address}}, {{lc|std::allocator}}, {{lc|std::default_delete}}
 +
|-
 +
|EDG
 +
|[https://www.edg.com/company Edison Design Group]
 +
|
 +
|-
 +
|EH
 +
|Exception Handling
 +
|
 +
|-
 +
|ELF
 +
|{{enwiki|Executable and linkable Format|'''E'''xecutable and '''L'''inkable '''F'''ormat}}
 +
|
 +
|-
 +
|EWG
 +
|The '''E'''volution '''W'''orking '''G'''roup
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-
 +
|EWGI
 +
|The '''E'''volution '''W'''orking '''G'''roup '''I'''ncubator
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-
 +
|FAM
 +
|{{enwiki|Flexible array member|Flexible Array Member}}
 +
|
 +
|-
 +
|GCC
 +
|{{enwiki|GNU|'''G'''NU}} '''C'''ompiler '''C'''ollection
 +
|
 +
|-
 +
|GMF
 +
|Global Module Fragment
 +
|{{rlp|modules|Modules}}
 +
|-
 +
|HALO
 +
|'''H'''eap '''A'''llocation e'''L'''ision '''O'''ptimization
 +
|{{rlp|coroutines|Coroutines}}, {{stddoc|p0981}}
 
|-
 
|-
 
|ICE
 
|ICE
|Internal Compiler Error
+
|[[enwiki:Compilation error#Internal Compiler Errors|Internal Compiler Error]]; Integer Constant Expression
 
|
 
|
 
|-
 
|-
|NRVO
+
|IFNDR
|{{rlp|copy_elision | Named Return Value Optimization}}
+
|{{rlp|ndr|Ill-Formed, No Diagnostic Required}}
 
|
 
|
 
|-
 
|-
|NTTP
+
|IIILE
|{{rlp|template_parameters| Non-type template parameter}}
+
|Immediately Invoked Initializing {{rlp|lambda|Lambda Expression}}
 
|
 
|
 
|-
 
|-
|PIMPL
+
|IPO
|{{rlp|pimpl | Pointer to IMPLementation}}
+
|{{enwiki|Interprocedural optimization|Inter-Procedural Optimization}}
 +
|
 +
|-
 +
|IWYU
 +
|'''I'''nclude '''W'''hat '''Y'''ou '''U'''se
 +
|[https://include-what-you-use.org libclang-based tool]
 +
|-
 +
|LEWG
 +
|The '''L'''ibrary '''E'''volution '''W'''orking '''G'''roup
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-
 +
|LEWGI
 +
|The '''L'''ibrary '''E'''volution '''W'''orking '''G'''roup '''I'''ncubator
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-
 +
|LTO
 +
|[[enwiki:Interprocedural optimization#WPO and LTO|Link-Time Optimization]]
 +
|
 +
|-
 +
|LWG
 +
|The '''L'''ibrary '''W'''orking '''G'''roup
 +
|[https://isocpp.org/std/the-committee WG21]
 +
|-
 +
|MDT
 +
|Most Derived Type
 +
|
 +
|-id="MPSC"
 +
|MPSC
 +
|Multi-Producer Single-Consumer (e.g., task queue)
 +
|{{lc|std::executor}}
 +
|-
 +
|MSVC
 +
|'''M'''icro'''S'''oft '''V'''isual '''C'''++
 +
|
 +
|-
 +
|NAD
 +
|Not A Defect
 +
|See also {{ls|#DR}}
 +
|-
 +
|NDR
 +
|{{rlp|ndr|No Diagnostic Required}}
 +
|
 +
|-
 +
|NRVO
 +
|{{rlp|copy elision|Named Return Value Optimization}}
 +
|
 +
|-
 +
|NSDMI
 +
|{{rlp|data members|Non-Static Data Member Initialization}}
 +
|
 +
|-
 +
|NTBS
 +
|[[cpp/string/byte|Null-Terminated Byte Strings]]
 +
|
 +
|-
 +
|NTTP
 +
|{{rlp|template parameters|Non-Type Template Parameter}}
 +
|
 +
|-
 +
|NUA
 +
|No Unique Address
 +
|{{attribute|no_unique_address}}
 +
|-
 +
|NVI
 +
|'''N'''on-'''V'''irtual '''I'''nterface
 
|
 
|
 
|-
 
|-
 
|ODR
 
|ODR
|{{rlp|definition | One Definition Rule}}
+
|{{rlp|definition|One Definition Rule}}
 
|
 
|
 
|-
 
|-
 +
|OOP
 +
|{{enwiki|Object-Oriented Programming}}
 +
|
 +
|-
 +
|PCH
 +
|'''P'''re-'''C'''ompiled '''H'''eader
 +
|[https://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html gcc doc on PCH]
 +
|-id="PDO"
 +
|PDO
 +
|Profile-Driven Optimization
 +
|See also {{ls|#PGO}}
 +
|-id="PGO"
 +
|PGO
 +
|{{enwiki|Profile-guided Optimization|'''P'''rofile-'''G'''uided '''O'''ptimization}}
 +
|See also {{ls|#PDO}}
 +
|-
 +
|PIMPL
 +
|{{rlp|pimpl|Pointer to IMPLementation}}
 +
|
 +
|-
 +
|PMF
 +
|Private Module Fragment
 +
|{{rlp|modules|Modules}}
 +
|-
 +
|PMR
 +
|'''P'''olymorphic '''M'''emory '''R'''esources
 +
|{{header|memory_resource}}
 +
|-
 +
|POCCA
 +
|[[cpp/memory/allocator_traits|Propagate on Container Copy Assignment]]
 +
|
 +
|-
 +
|POCMA
 +
|[[cpp/memory/allocator_traits|Propagate on Container Move Assignment]]
 +
|
 +
|-
 +
|POCS
 +
|[[cpp/memory/allocator_traits|Propagate on Container Swap]]
 +
|
 +
|-
 +
|POD
 +
|[[cpp/named req/PODType|Plain Old Data]] ({{named req|PODType}})
 +
|{{named req|ScalarType}}, {{named req|TrivialType}}, {{named req|StandardLayoutType}}
 +
|-
 +
|QoI
 +
|'''Q'''uality '''o'''f '''I'''mplementation
 +
|
 +
|-id="RAII"
 
|RAII
 
|RAII
|{{rlp|raii | Resource Acquisition Is Initialization}}
+
|{{rlp|raii|Resource Acquisition Is Initialization}}
 
|
 
|
 +
|-
 +
|RACO
 +
|[[cpp/ranges#Range adaptor closure objects|Range Adaptor Closure Object]]
 +
|{{named req|RangeAdaptorClosureObject}}
 +
|-
 +
|RAO
 +
|[[cpp/ranges#Range adaptor objects|Range Adaptor Object]]
 +
|{{named req|RangeAdaptorObject}}
 +
|-
 +
|RCU
 +
|{{enwiki|Read-copy-update|Read-Copy-Update}}
 +
|{{header|rcu}}
 
|-
 
|-
 
|RTTI
 
|RTTI
|{{rlp|types| Runtime type identification}}
+
|{{rlp|types|RunTime Type Identification}}
 
|{{lc|std::type_info}}
 
|{{lc|std::type_info}}
 
|-
 
|-
|RVO  
+
|RVO
|{{rlp|copy_elision | Return Value Optimization}}
+
|{{rlp|copy elision|Return Value Optimization}}
 
|
 
|
 
|-
 
|-
Line 58: Line 270:
 
|Small Buffer Optimization
 
|Small Buffer Optimization
 
|
 
|
 +
|-
 +
|SBRM
 +
|'''S'''cope-'''B'''ound '''R'''esource '''M'''anagement, see {{ls|#RAII}}
 +
|
 +
|-
 +
|SCARY
 +
|'''S'''eemingly erroneous (appearing '''C'''onstrained by conflicting generic parameters), but '''A'''ctually work with the '''R'''ight implementation (unconstrained b'''Y''' the conflict due to minimized dependencies).
 +
|[https://www.stroustrup.com/SCARY.pdf stroustrup.com/SCARY]
 +
|-
 +
|SEH
 +
|'''S'''tructured '''E'''xception '''H'''andling
 +
|{{enwiki|Microsoft-specific exception handling mechanisms#SEH|SEH}}
 
|-
 
|-
 
|SFINAE
 
|SFINAE
|{{rlp|sfinae | Substitution Failure Is Not An Error}}
+
|{{rlp|sfinae|Substitution Failure Is Not An Error}}
 
|{{lc|std::enable_if}}, {{lc|std::void_t}}
 
|{{lc|std::enable_if}}, {{lc|std::void_t}}
 +
|-
 +
|SIOF
 +
|[https://isocpp.org/wiki/faq/ctors#static-init-order '''S'''tatic '''I'''nitialization '''O'''rder '''F'''iasco]
 +
|
 +
|-
 +
|SMF
 +
|Special Member Function
 +
|
 +
|-
 +
|SOCCC
 +
|[[cpp/memory/allocator_traits/select_on_container_copy_construction|Select On Container Copy Construction]]
 +
|
 
|-
 
|-
 
|SOO
 
|SOO
 
|Small Object Optimization
 
|Small Object Optimization
|{{lc|std::function}}, {{lc|std::any}}
+
|{{lc|std::move_only_function}}, {{lc|std::function}}, {{lc|std::any}}
 
|-
 
|-
 
|SSO
 
|SSO
 
|Small String Optimization
 
|Small String Optimization
 
|{{lc|std::basic_string}}
 
|{{lc|std::basic_string}}
 +
|-
 +
|STL
 +
|The '''S'''tandard '''T'''emplate '''L'''ibrary
 +
|
 +
|-
 +
|TCO
 +
|'''T'''ail '''C'''all '''O'''ptimization
 +
|
 
|-
 
|-
 
|TMP
 
|TMP
|Template Meta Programming
+
|{{rlp|template metaprogramming|'''T'''emplate '''M'''eta '''P'''rogramming}}
 
|{{header|type_traits}}
 
|{{header|type_traits}}
 +
|-
 +
|TU
 +
|[[cpp/language/translation phases#Phase 8|Translation Unit]]
 +
|{{rlp|modules|Modules}}, {{rlp|tu_local|TU-local}}
 
|-
 
|-
 
|UB
 
|UB
|{{rlp|ub | Undefined Behavior}}
+
|{{rlp|ub|Undefined Behavior}}
 +
|
 +
|-
 +
|UDC
 +
|[[cpp/language/cast operator|'''U'''ser-'''D'''efined '''C'''onversion]] operator
 +
|
 +
|-
 +
|UDL
 +
|{{rlp|user literal|User-Defined Literals}}
 +
|
 +
|-
 +
|UFCS
 +
|Universal Function Call Syntax
 +
|[https://brevzin.github.io/c++/2019/04/13/ufcs-history “What is UFCS anyway?”]
 +
|-
 +
|VLA
 +
|'''V'''ariable-'''L'''ength '''A'''rray
 +
|[https://stackoverflow.com/questions/1887097/why-arent-variable-length-arrays-part-of-the-c-standard SO on VLA]
 +
|-
 +
|WPO
 +
|[[enwiki:Interprocedural optimization#WPO and LTO|Whole-Program Optimization]]
 
|
 
|
 
|}
 
|}
  
{{langlinks|ja|zh}}
+
===External links===
 +
{{elink begin}}
 +
{{elink|[https://quuxplusone.github.io/blog/2019/08/02/the-tough-guide-to-cpp-acronyms/ “A C++ acronym glossary” by Arthur O’Dwyer, 2019/08]}}
 +
{{elink end}}
 +
 
 +
{{langlinks|es|ja|ru|zh}}

Latest revision as of 11:54, 7 November 2024

 
 
C++ language
General topics
Flow control
Conditional execution statements
if
Iteration statements (loops)
for
range-for (C++11)
Jump statements
Functions
Function declaration
Lambda function expression
inline specifier
Dynamic exception specifications (until C++17*)
noexcept specifier (C++11)
Exceptions
Namespaces
Types
Specifiers
const/volatile
decltype (C++11)
auto (C++11)
constexpr (C++11)
consteval (C++20)
constinit (C++20)
Storage duration specifiers
Initialization
Expressions
Alternative representations
Literals
Boolean - Integer - Floating-point
Character - String - nullptr (C++11)
User-defined (C++11)
Utilities
Attributes (C++11)
Types
typedef declaration
Type alias declaration (C++11)
Casts
Memory allocation
Classes
Class-specific function properties
explicit (C++11)
static

Special member functions
Templates
Miscellaneous
 
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
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
CRTP Curiously Recurring Template Pattern std::enable_shared_from_this, std::ranges::view_interface
CTAD Class Template Argument Deduction
CTRE Compile-Time Regular Expressions A CTRE lib
CWG The Core Working Group WG21
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
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 Template:attribute
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
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
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
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

[edit] External links

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