Functionオブジェクト
-
代わりに関数ポインタ
-
長所:内部関数オブジェクトではなく、グローバル変数や静的ローカル変数を使用しての、状態を保存することができます
-
キー:過負荷「()」演算子
1の#include <iostreamの> 2の#include < ストリング > 3 4 使用して 名前空間STD。 5 / *计算のFib数列* / 6 クラスのFunc 7 { 8 INT X; 9 INTのY; 10 公衆: 11 のFunc(int型のx = 1、INT Y = 1 ) 12 { 13 本 - > X = X。 14 本 - > yは= yと、 15 } 16 17 のint演算子()() 18 { 19 INT K = 0 。 20 21 K =のX。 22 X = Y。 23 Y = K + X。 24 25 リターン右。 26 } 27 }。 28 29 のint main()の 30 { 31 のFunc F1。 32 のために(int型 I = 0 ; iが< 10 ; iが++ ) 33 { 34 coutの<< F1()<< てendl; 35 } 36 リターン 0 。 37 }