C++ syntax: Difference between revisions

Content deleted Content added
Tags: Mobile edit Mobile web edit
 
(4 intermediate revisions by 3 users not shown)
Line 38:
* <code>alignas</code>
* <code>alignof</code>
* <code>and</code>
* <code>and_eq</code>
* <code>asm</code>
* <code>auto</code>
* <code>bitand</code>
* <code>bitor</code>
* <code>bool</code>
* <code>break</code>
Line 53 ⟶ 49:
* <code>char32_t</code>
* <code>class</code>
* <code>compl</code>
* <code>concept</code>
* <code>const</code>
Line 90 ⟶ 85:
* <code>new</code>
* <code>noexcept</code>
* <code>not</code>
* <code>not_eq</code>
* <code>nullptr</code>
* <code>operator</code>
* <code>or</code>
* <code>or_eq</code>
* <code>private</code>
* <code>protected</code>
Line 128 ⟶ 119:
* <code>wchar_t</code>
* <code>while</code>
* <code>xor</code>
* <code>xor_eq</code>
{{div col end}}
 
The keyword [[restrict|<code>restrict</code>]], though present in C, is not standard in C++, though some compilers may support it. The keyword <code>fortran</code>, a conditionally supported keyword in C which denotes linkage for the [[Fortran]] programming language, is conditionally supported in C++.
 
=== Alternative operator keywords ===
The following words are reserved keywords, but are used as alternative spellings for operators and tokens that use non-ISO646 characters.
{{div col|colwidth=15em}}
* <code>and</code>
* <code>and_eq</code>
* <code>bitand</code>
* <code>bitor</code>
* <code>compl</code>
* <code>not</code>
* <code>not_eq</code>
* <code>or</code>
* <code>or_eq</code>
* <code>xor</code>
* <code>xor_eq</code>
{{div col end}}
 
=== Identifiers with special meaning ===
Line 570 ⟶ 575:
class MyObject {
private:
[[no_unique_address]]
int x;
public:
[[nodiscard]]
Line 696 ⟶ 702:
 
== See also ==
* [[C++ standard library]]
* [[C syntax]]
* [[Java syntax]]
* [[C Sharp syntax|C# syntax]]
* [[Rust syntax]]