软件测试C++面向对象程序设计的重要概念[2]

发表于:2009-11-12来源:作者:点击数: 标签:软件测试面向对象程序设计概念
软件测试C++面向对象程序设计的重要概念[2] 软件测试工具 关键字:C++ 面向对象 程序设计 很多C++教课书主张在设计类时“以数据为中心”。我坚持并且建议读者在设计类时“以行为为中心”,即首先考虑类应该提供什么样的函数。Microsoft 公司的COM 规范的核心

软件测试C++面向对象程序设计的重要概念[2]    软件测试工具

关键字:C++ 面向对象 程序设计

  很多C++教课书主张在设计类时“以数据为中心”。我坚持并且建议读者在设计类时“以行为为中心”,即首先考虑类应该提供什么样的函数。Microsoft 公司的COM 规范的核心是接口设计,COM 的接口就相当于类的公有函数[Rogerson 1999]。在程序设计方面,咱们不要怀疑Microsoft 公司的风格。

  设计孤立的类是比较容易的,难的是正确设计基类及其派生类。因为有些程序员搞不清楚“继承”(Inheritance)、“组合”(Composition)、“多态”( Polymorphism)这些概念。

  继承与组合

  如果A 是基类,B 是A 的派生类,那么B 将继承A 的数据和函数。示例程序如下:

  class A

  {

  public:

  void Func1(void);

  void Func2(void);

  };

  class B : public A

  {

  public:

  void Func3(void);

  void Func4(void);

  };

  // Example

  main()

  {

  B b; // B的一个对象

  b.Func1(); // B 从A 继承了函数Func1

  b.Func2(); // B 从A 继承了函数Func2

  b.Func3();

 

原文转自:http://www.ltesting.net