菜单

Amos Blog

Java 开发者学 C++(六):Lambda 表达式与函数式编程

导语:为什么 Lambda 是 C++11 最重要的特性之一 如果你问一个资深 C++ 程序员「C++11 哪个特性改变了你的编码方式」,Lambda 表达式一定排在前三。不是因为 Lambda 本身有多新奇——Java 早在 2014 年就引入了——而是因为 Lambda 彻底激活了 STL 算法

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(四):类型系统进阶

如果你是 Java 开发者,你大概对 Java 的类型系统已经非常熟悉了:静态类型检查、泛型擦除、final 常量、以及 Java 10 引入的 var。你可能会想——C++ 的类型系统不就是多了指针和引用吗?还有什么特别的? 答案是:C++ 的类型系统比你想象的强大得多,也复杂得多。它不只是"标注

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(九):并发编程

C++ 并发 vs Java 并发:晚来的标准 C++ 直到 C++11 才在标准库中提供了线程支持(<thread>、<mutex>、<future>、<condition_variable> 等),而 Java 从 1.0 开始就有线程。但 C++ 的设计思路和 Java 的 java.util

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(八):模板与泛型编程

从 Java 泛型到 C++ 模板:截然不同的哲学 Java 开发者看到 C++ 模板的第一反应通常是"这不就是泛型吗?"——这是 C++ 入门的最大误解之一。 一句话总结:Java 泛型是编译时类型擦除,C++ 模板是编译时代码生成。 // C++:每个实例化生成独立代码 std::vector<

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(七):面向对象 - 类、继承与多态

C++ 的面向对象语法和 Java 很相似,因为两者都继承自 Simula。但底层机制有很大不同——尤其是值语义 vs 引用语义、手动内存管理和编译期多态的差异。 类的基本结构 // Person.h(头文件) #pragma once #include <string> class Person

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(五):STL 容器与算法速通

STL 与 Java 集合框架:不同的设计哲学 Java 开发者对 ArrayList、HashMap 等集合框架非常熟悉。C++ 的 STL(Standard Template Library)提供类似的功能,但设计理念完全不同——STL 是泛型 + 算法分离的:容器只管存储数据,算法通过迭代器操

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(三):指针、引用与内存管理

从 Java 引用说起 在 Java 中,所有对象都在堆上分配,变量只是对象的引用(reference): // Java:所有对象都在堆上,变量是引用 Person p = new Person("Alice"); Person q = p; // q 是同

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(二):基础语法速通(瘦身版)

Java 开发者面对 C++ 的语法其实不会太陌生——它们都源自 C 语言家族。但细节上有很多值得注意的差异,尤其是现代 C++(C++11/14/17/20)引入的大量新特性,让 C++ 的写法发生了质变。本文从 Java 开发者的视角出发,快速梳理 C++ 的基础语法,重点突出现代 C++ 的最

Administrator Administrator 发布于 2026-05-22

Java 开发者学 C++(一):思维范式转变

为什么要学 C++? 作为 Java 开发者,你可能对 C++ 早有耳闻。C++ 是系统级编程的语言之王——操作系统、数据库引擎、游戏引擎、浏览器内核、高性能计算框架、AI 推理引擎,几乎所有的底层基础设施都是用 C++ 编写的。Java 本身(JVM)也是用 C++ 实现的。 C++ 能给你什么

Administrator Administrator 发布于 2026-05-22