C / C++ 的值、指针与资源生命周期

对象先于地址 指针保存地址,但地址有效不等于对应对象仍然存在。理解指针需要同时考虑对象类型、存储范围、生命周期和所有者。返回局部变量的地址会留下悬空指针;数组下标越界即使没有马上崩溃,也不能当作正确行为。 ...

2026年10月24日 · 2 分钟 · Cinna

Python 的对象、容器与函数

名字绑定对象 Python 变量名绑定到对象。赋值不自动复制对象,两个名字可能引用同一个列表;函数参数也遵循同样的绑定方式。对象是否可变,比“参数是不是按值传递”更有解释力。 ...

2026年10月24日 · 2 分钟 · Cinna

程序、状态与不变量

把问题写成可检查的规则 程序接收输入,按照规则改变状态,产生输出。先写清输入允许什么、输出保证什么,比直接选语言更有用。例如库存扣减必须保证库存非负;仅仅让函数返回一个数字,还没有表达完整需求。 ...

2026年10月24日 · 2 分钟 · Cinna

命令行、Git 与可复现的修改

命令运行在哪里 命令由程序名、参数和运行环境组成。同一条相对路径在不同工作目录下指向不同文件。排查“找不到文件”时,先确认工作目录与实际路径,再检查拼写和权限。标准输出用于结果,标准错误用于诊断,退出码用于说明操作是否成功。 ...

2026年10月24日 · 2 分钟 · Cinna