1. 牵一发而动全身

现在开始进入你的C++程序,你对你的类实现做了一个很小的改动。注意,不是接口,只是实现,而且是private部分。然后你需要rebuild你的程序,计算着这个build应该几秒钟就足够了。毕竟,只修改了一个类。你点击了build 或者输入了make( 或者其他方式),你被惊到了,然后羞愧难当,因为你意识到整个世界都被重新编译和重新链接了!当这些发生时你不觉的感到愤恨么?

回到顶部

2. 编译依赖是如何发生的

问题出在C++并不擅长将接口从实现中分离出来。类定义不仅指定了类的接口也同时指定了许多类的细节。举个例子:

大数据培训,云培训,数据挖掘培训,云计算培训,高端软件开发培训,项目经理培训

 1 class Person { 2 public: 3 Person(const std::string& name, const Date& birthday, 4 const Address& addr); 5 std::string name() const; 6 std::string birthDate() const; 7 std::string address() const; 8 ... 9 private:10 std::string theName; // implementation detail11 Date theBirthDate; // implementation detail12 13 Address theAddress;              // implementation detail14 15 };

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式