前言

在程序设计语言百花齐放的今天,C++ 在底层编程领域依然维持着不可撼动的统治地位,因此掌握 C++ 语言是了解计算机 世界基础设施的前置条件之一。然而,C++ 确实是一门庞大的语言,而且依然在不断地演进,因此笔者也只能基于自己的工作经历, 介绍一些比较重要的内容。 正如 Effective C++ 中所说,在学习 C++ 时,需要把 C++ 当成一个语言联邦——它支持若干种范式:过程式编程、 面向对象编程、泛型编程、函数式编程等等。尽管实践中一般会混合这些范式,本教程中我们会逐一单独介绍。 每种范式我们都会根据基本元素、组合的手段和抽象的手段三个方面入手,并提供真实世界的例子以加深理解。 这是笔者第一次尝试系统地写作,由于个人水平有限,难免有错漏之处,请读者多多批评指正,同时也欢迎改进意见! 笔者的联系方式见此处。

October 3, 2024

Visual Studio Code C/C++ 开发环境搭建

安装 VS Code 官网下载 小技巧:如果官网下载比较慢,可以把下载地址中的 az764295.vo.msecnd.net 更换为 vscode.cdn.azure.cn 安装 clangd1 在 Arch Linux 上,clangd 在 clang 这个包中,用如下命令安装: $ pacman -S clang 其他平台可能会使用 clang-extra-tools 这个名称 安装完成之后,还需要安装 llvm-vs-code-extensions.vscode-clangd 这个扩展。 生成 compile_commands.json CMake 当然你先需要安装 CMake 项目目录结构如下: . |- CMakeLists.txt |- include | `- demo | `- Support | `- Strings.h `- src `- main.cpp `- Support `- Strings.cpp 使用 cmake -S . -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=1 CMake 目前(2023 年)只能支持 GNU Make 和 Ninja 生成 compile_commands....

February 13, 2023