inherit.cpp

来自「Think in C++ 2nd」· C++ 代码 · 共 37 行

CPP
37
字号
//: C14:Inherit.cpp

// From Thinking in C++, 2nd Edition

// Available at http://www.BruceEckel.com

// (c) Bruce Eckel 1999

// Copyright notice in Copyright.txt

// Simple inheritance

#include "Useful.h"

#include <iostream>

using namespace std;



class Y : public X {

  int i; // Different from X's i

public:

  Y() { i = 0; }

  int change() {

    i = permute(); // Different name call

    return i;

  }

  void set(int ii) {

    i = ii;

    X::set(ii); // Same-name function call

  }

};



int main() {

  cout << "sizeof(X) = " << sizeof(X) << endl;

  cout << "sizeof(Y) = "

       << sizeof(Y) << endl;

  Y D;

  D.change();

  // X function interface comes through:

  D.read();

  D.permute();

  // Redefined functions hide base versions:

  D.set(12);

} ///:~

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?