语法拾遗中,有哪些细节特性容易被忽视?

2026-05-19 18:170阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1786个文字,预计阅读时间需要8分钟。

语法拾遗中,有哪些细节特性容易被忽视?

写了两年的C++ STL的ACMer,在学习《C++ Primer》时总结的一些少见的语法特性与细节。总体来说,这些都是与题目说的一样,这是C++的精华。

1. 变量和基本类型

1.1 基本类型

1.1.1 字面量常量

0123

表示的是十进制数123,而不是八进制。在C++中,数字前不加0默认是十进制。

语法拾遗中,有哪些细节特性容易被忽视?

写了2年多的C+STL的acmer,在学习《C++ primer》时总结的一些少见的语法特性与细节。总体还是和题目说的一样这是一篇 c++ 拾遗。

1 变量和基本类型 1.1 基本类型 1.1.1 字面常量

0123 表示的不是带有前导0的数字123,而是代表8进制数字123。

1.2 常量 1.2.1 constexpr

constexpr变量能自动判别赋值的表达式是否是常量表达式,若不是则会报错。

constexpr int mf=20; //20是常量表达式 constexpr int limit=mf+1; //mf+1是常量表达式 constexpr int sz=size(); //当size是一个constexpr 函数的时候是是常量表达式 int a=20; constexpr int b=a+1; //报错 1.2 处理类型 1.2.1 decltype

decltype能和auto类似的自动判别类型。

阅读全文

本文共计1786个文字,预计阅读时间需要8分钟。

语法拾遗中,有哪些细节特性容易被忽视?

写了两年的C++ STL的ACMer,在学习《C++ Primer》时总结的一些少见的语法特性与细节。总体来说,这些都是与题目说的一样,这是C++的精华。

1. 变量和基本类型

1.1 基本类型

1.1.1 字面量常量

0123

表示的是十进制数123,而不是八进制。在C++中,数字前不加0默认是十进制。

语法拾遗中,有哪些细节特性容易被忽视?

写了2年多的C+STL的acmer,在学习《C++ primer》时总结的一些少见的语法特性与细节。总体还是和题目说的一样这是一篇 c++ 拾遗。

1 变量和基本类型 1.1 基本类型 1.1.1 字面常量

0123 表示的不是带有前导0的数字123,而是代表8进制数字123。

1.2 常量 1.2.1 constexpr

constexpr变量能自动判别赋值的表达式是否是常量表达式,若不是则会报错。

constexpr int mf=20; //20是常量表达式 constexpr int limit=mf+1; //mf+1是常量表达式 constexpr int sz=size(); //当size是一个constexpr 函数的时候是是常量表达式 int a=20; constexpr int b=a+1; //报错 1.2 处理类型 1.2.1 decltype

decltype能和auto类似的自动判别类型。

阅读全文