我发现C程序
很少超越其初始设计
.问题是,很难重构C程序
.如
cpp
struct S { int a; };
struct S s; s.a = 3;
struct S *p; p->a = 3;
即.
用来直接访问
,->
用来间接访问
.假设想把按值传递
S改为按指针
传递S
.现在你必须更新每个使用
,而不仅是声明
.
这是它在D
中的工作方式
:
cpp
struct S { int a; }
S s; s.a = 3;
S* p; p.a = 3;
ref S q; q.a = 3;
因此,更易重构
,因此重构频率
也更高.