大家好,新人来报道啦,混个脸熟,首先介绍一下我的开发环境信息

129 阅读2分钟

一、我的开发环境信息

我的开发环境很简单,具体配置如下:

  • Linux 系统:CentOS 7
  • 架构:64位
  • 编译器:GCC 4.8.5,C++11 标准(直到 2024 年 12 月 31 日)

从 2025 年 1 月 1 日起,我将升级至以下环境配置:

  • 编译器:GCC 7.5.0
  • C++ 标准:C++17

二、GCC7.5.0 版本对 C++17 标准的支持

GCC 7.5.0 提供了大部分 C++17 标准的支持,包括重要的新特性和库更新。

主要的 C++17特性,如下这些GCC 7.5.0 都已经支持的非常成熟:

  • 结构化绑定声明
  • if constexpr
  • 折叠表达式
  • std::optional
  • std::string_view

只有特定边缘情况,仍然有一定的局限性,可能在某些平台或配置下存在问题。

根据 GCC 对 C++标准支持的状态页面 我们可以查看到 GCC 对每一个 C++ 标准的详细支持情况。

image.png

三、查看你的系统信息

如果你也在使用 CentOS 7,可以通过以下命令查看系统的相关信息:

查看 CPU 硬件架构(32 位还是 64 位):

uname -m

查看 Linux 内核的发行版本号:

uname -r

查看 Red Hat 系列 Linux 发行版信息:

cat /etc/redhat-release

示例输出:

[app@testsrv02 app]$ uname
Linux
[app@testsrv02 app]$ uname -m
x86_64
[app@testsrv02 app]$ uname -r
3.10.0-693.el7.x86_64
[app@testsrv02 app]$ uname -v
#1 SMP Tue Aug 22 21:09:27 UTC 2017
[app@testsrv02 app]$ cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

四、uname 命令使用说明

uname 命令可用于输出系统的基本信息。下面是该命令的一些常用选项:

[app@testsrv02 app]$ uname --help
用法:uname [选项]...
输出一组系统信息。如果不跟随选项,则视为只附加 -s 选项。

  -a, --all              输出所有信息,包括内核名称、版本等
  -s, --kernel-name      输出内核名称
  -n, --nodename         输出主机名
  -r, --kernel-release   输出内核版本号
  -v, --kernel-version   输出内核版本
  -m, --machine          输出硬件架构名称
  -p, --processor        输出处理器类型或"unknown"
  -i, --hardware-platform 输出硬件平台或"unknown"
  -o, --operating-system 输出操作系统名称
      --help             显示帮助信息
      --version          显示版本信息