Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/language/acronyms"

From cppreference.com
< cpp‎ | language
m (External links)
(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?)
 
(10 intermediate revisions by 3 users not shown)
Line 12: Line 12:
 
|-
 
|-
 
|ABC
 
|ABC
|{{rlp|abstract_class|Abstract Base Class}}
+
|{{rlp|abstract class|Abstract Base Class}}
 
|
 
|
 
|-
 
|-
 
|ABI
 
|ABI
|[[enwiki:Application_binary_interface|Application Binary Interface]]
+
|{{enwiki|Application Binary Interface}}
 
|[https://itanium-cxx-abi.github.io/cxx-abi/abi.html Itanium C++ ABI]
 
|[https://itanium-cxx-abi.github.io/cxx-abi/abi.html Itanium C++ ABI]
 
|-
 
|-
Line 24: Line 24:
 
|-
 
|-
 
|ADT
 
|ADT
|[[enwiki:Abstract_data_type|Abstract Data Type]]
+
|{{enwiki|Abstract Data Type}}
 
|
 
|
 
|-
 
|-
 
|API
 
|API
|[[enwiki:Application_programming_interface|Application Programming Interface]]
+
|{{enwiki|Application Programming Interface}}
 
|
 
|
 +
|-
 +
|BMI
 +
|Binary Module Interface
 +
|{{rlp|modules|Modules}}
 
|-
 
|-
 
|CAS
 
|CAS
|[[enwiki:Compare-and-swap|Compare And Swap]]; [https://stackoverflow.com/questions/3279543/what-is-the-copy-and-swap-idiom Copy And Swap]
+
|{{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}}
 
|{{ltt|cpp/atomic/atomic/compare_exchange}}
 +
|-
 +
|CMI
 +
|Compiled Module Interfaces
 +
|{{rlp|modules|Modules}}
 
|-
 
|-
 
|COW
 
|COW
|[[enwiki:Copy-on-write|Copy On Write]]
+
|{{enwiki|Copy-On-Write}}
 
|
 
|
 
|-
 
|-
 
|CPO
 
|CPO
|[[cpp/ranges|Customization Point Object]]
+
|[[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}}
 
|[https://eel.is/c++draft/customization.point.object#1 &#91;customization.point.object&#93;], {{named req|RangeAdaptorObject}}, {{named req|RangeAdaptorClosureObject}}
 
|-
 
|-
Line 48: Line 56:
 
|-
 
|-
 
|CTAD
 
|CTAD
|{{rlp|class_template_argument_deduction|Class Template Argument Deduction}}
+
|{{rlp|class template argument deduction|Class Template Argument Deduction}}
 +
|
 +
|-
 +
|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
+
|EBO<br>EBCO
 
|{{rlp|ebo|Empty Base (Class) Optimization}}
 
|{{rlp|ebo|Empty Base (Class) Optimization}}
 
|{{attr|no_unique_address}}, {{lc|std::allocator}}, {{lc|std::default_delete}}
 
|{{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
|[[enwiki:Compilation_error#Internal_Compiler_Errors|Internal Compiler Error]]; Integer Constant Expression
+
|[[enwiki:Compilation error#Internal Compiler Errors|Internal Compiler Error]]; Integer Constant Expression
 
|
 
|
 
|-
 
|-
Line 68: Line 124:
 
|-
 
|-
 
|IPO
 
|IPO
|[[enwiki:Interprocedural_optimization|InterProcedural Optimization]]
+
|{{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
 
|LTO
|[[enwiki:Interprocedural_optimization#WPO and LTO|Link-Time Optimization]]
+
|[[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
 
|NDR
Line 80: Line 168:
 
|-
 
|-
 
|NRVO
 
|NRVO
|{{rlp|copy_elision|Named Return Value Optimization}}
+
|{{rlp|copy elision|Named Return Value Optimization}}
 
|
 
|
 
|-
 
|-
 
|NSDMI
 
|NSDMI
|{{rlp|data_members|Non-Static Data Member Initialization}}
+
|{{rlp|data members|Non-Static Data Member Initialization}}
 
|
 
|
 
|-
 
|-
Line 92: Line 180:
 
|-
 
|-
 
|NTTP
 
|NTTP
|{{rlp|template_parameters|Non-Type Template Parameter}}
+
|{{rlp|template parameters|Non-Type Template Parameter}}
 +
|
 +
|-
 +
|NUA
 +
|No Unique Address
 +
|{{attribute|no_unique_address}}
 +
|-
 +
|NVI
 +
|'''N'''on-'''V'''irtual '''I'''nterface
 
|
 
|
 
|-
 
|-
Line 100: Line 196:
 
|-
 
|-
 
|OOP
 
|OOP
|[[enwiki:Object-oriented_programming|Object-Oriented Programming]]
+
|{{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
 
|PIMPL
 
|{{rlp|pimpl|Pointer to IMPLementation}}
 
|{{rlp|pimpl|Pointer to IMPLementation}}
 
|
 
|
 +
|-
 +
|PMF
 +
|Private Module Fragment
 +
|{{rlp|modules|Modules}}
 +
|-
 +
|PMR
 +
|'''P'''olymorphic '''M'''emory '''R'''esources
 +
|{{header|memory_resource}}
 
|-
 
|-
 
|POCCA
 
|POCCA
Line 119: Line 235:
 
|
 
|
 
|-
 
|-
 +
|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}}
Line 130: Line 254:
 
|[[cpp/ranges#Range adaptor objects|Range Adaptor Object]]
 
|[[cpp/ranges#Range adaptor objects|Range Adaptor Object]]
 
|{{named req|RangeAdaptorObject}}
 
|{{named req|RangeAdaptorObject}}
 +
|-
 +
|RCU
 +
|{{enwiki|Read-copy-update|Read-Copy-Update}}
 +
|{{header|rcu}}
 
|-
 
|-
 
|RTTI
 
|RTTI
Line 136: Line 264:
 
|-
 
|-
 
|RVO
 
|RVO
|{{rlp|copy_elision|Return Value Optimization}}
+
|{{rlp|copy elision|Return Value Optimization}}
 
|
 
|
 
|-
 
|-
Line 144: Line 272:
 
|-
 
|-
 
|SBRM
 
|SBRM
|Scope-Bound Resource Management, see {{rlp|raii|RAII}}
+
|'''S'''cope-'''B'''ound '''R'''esource '''M'''anagement, see {{ls|#RAII}}
 
|
 
|
 
|-
 
|-
Line 150: Line 278:
 
|'''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).
 
|'''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]
 
|[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
Line 156: Line 288:
 
|-
 
|-
 
|SIOF
 
|SIOF
|Static Initialization Order Fiasco
+
|[https://isocpp.org/wiki/faq/ctors#static-init-order '''S'''tatic '''I'''nitialization '''O'''rder '''F'''iasco]
 +
|
 +
|-
 +
|SMF
 +
|Special Member Function
 
|
 
|
 
|-
 
|-
Line 170: Line 306:
 
|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
|{{rlp|template metaprogramming|Template Meta Programming}}
+
|{{rlp|template metaprogramming|'''T'''emplate '''M'''eta '''P'''rogramming}}
 
|{{header|type_traits}}
 
|{{header|type_traits}}
 
|-
 
|-
 
|TU
 
|TU
|[[cpp/language/translation_phases#Phase 8|Translation Unit]]
+
|[[cpp/language/translation phases#Phase 8|Translation Unit]]
 
|{{rlp|modules|Modules}}, {{rlp|tu_local|TU-local}}
 
|{{rlp|modules|Modules}}, {{rlp|tu_local|TU-local}}
 
|-
 
|-
Line 184: Line 328:
 
|-
 
|-
 
|UDC
 
|UDC
|[[cpp/language/cast_operator|User-defined conversion]] operator
+
|[[cpp/language/cast operator|'''U'''ser-'''D'''efined '''C'''onversion]] operator
 
|
 
|
 
|-
 
|-
 
|UDL
 
|UDL
|{{rlp|user_literal|User-Defined Literals}}
+
|{{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
 
|WPO
|[[enwiki:Interprocedural_optimization#WPO and LTO|Whole-Program Optimization]]
+
|[[enwiki:Interprocedural optimization#WPO and LTO|Whole-Program Optimization]]
 
|
 
|
 
|}
 
|}
  
 
===External links===
 
===External links===
* [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 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}}
 
{{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