2025-12-31 12:49:32 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 00:39:23 +08:00
2025-12-31 12:49:32 +08:00
2025-12-31 00:39:23 +08:00

C-With-Classes

说明型(偏定义、适合写文档/博客)

C-With-Classes 指的是一种编程风格,而非严格意义上的语言或标准。 它以 C 语言为基础,仅引入 C++ 中最核心的“类”机制(如 class、构造函数、析构函数、访问控制等),同时刻意回避或极少使用 C++ 中复杂的特性与庞大的标准库(如模板元编程、复杂 STL、异常机制、RTTI 等)。

在这种风格下:

  • 程序整体仍然呈现出 C 的结构化与过程化特征
  • 类更多被视为一种 “结构体 + 约束 + 生命周期管理” 的增强
  • C++ 只是作为 更安全、更可控的 C 来使用

其目标通常是:

在保持代码可预测性、可读性和底层可控性的同时, 获得最基本的面向对象抽象能力。


程序员理解型(偏口语 / 偏“老 C 派”)

所谓 C-With-Classes,本质上就是:

“我想写 C但我又不想自己手搓 vtable 和 init / destroy 函数。”

它不是为了用尽 C++ 的所有能力,而是:

  • 只用 class、构造 / 析构
  • 可能用 new/delete,但不用智能指针
  • STL 能不用就不用,最多 std::string
  • 不碰模板地狱、不搞元编程、不信异常

在这种写法里:

  • 类 ≈ struct + 函数 + 约束
  • 对象 ≈ “带生命周期的 C 结构体”
  • 继承更多是 代码组织手段,而不是多态炫技

你写出来的代码:

  • 编译后 像 C 一样直白
  • 调试时 栈帧干净、汇编可读
  • 心里有底,不怕“语言在背后偷偷干了什么”

一句话总结(可以当结尾用)

C-With-Classes 并不是 C++ 的退化版本,而是一种克制的选择: 它用最小的 C++ 成本,换取比 C 更清晰的抽象与更安全的结构。

Description
No description provided
Readme 7.8 MiB
Languages
C++ 93.4%
C 6.6%