〜〜 C++講座・JAVA講座・VB講座・ネット収入講座・アフィリエイト講座・メール受信講座・株講座・投資信託講座・お小遣い講座 〜〜

   MENU           == C++基本講座 ==

1. はじめに
2. オブジェクト指向
3. 文法関連
4. クラス
5. コンストラクタ/デストラクタ
6. オーバーライド(仮想関数)
7. オーバーロード
8. new/delete
9. 継承/多重継承
10. 例外処理
11. inline関数,static変数



 得@スキルアップ塾.com > C++基本講座 > 11. inline関数,static変数

   inline関数,static変数


■inline

 ・inline関数とは、宣言時に実行処理を記述する為、ファイル自体は大きくなりますが、
  関数の呼び出し処理がなくなるため、処理は早くなります

 ・クラス外に定義する場合でも、"inline"キーワードを定義することで、inline関数になります。

【inline関数】
// inline関数

class A {
pravate:
  int a,b;

public:
  
// コンストラクタ
  A() {
    printf("コンストラクタ呼び出し\n");
  }

  
// インライン関数
  int func(){

    return a + b;
   
  }
};


または、

// inline関数

class A {
pravate:
  int a,b;

public:
  
// コンストラクタ
  A() {
    printf("コンストラクタ呼び出し\n");
  }

  
// インライン関数
  int func();
};

// インライン関数

inline
int func(){

   return a + b;
   
}

■static

 ・"static"定義は静的変数と言われ、関数やクラスなどそのブロックが終了しても、
  メモリ上に値が保持される変数のことを言います。

 ・静的変数の初期化は宣言と同時にはできません。必ずクラス外で定義して下さい。

 ・静的変数の初期値は"0"で保障されています。

// static変数
class A{
 public:
  static int stat_i;   
//J スタティック変数宣言

};

//J スタティック変数定義(初期化)
int A::stat_i = 100;

void main(){
   A ob_a,ob_b;

@ printf("ob_a.stat_i = %d\n",ob_a.stat_i);
   ob_a.stat_i=200;
A printf("ob_a.stat_i = %d\n",ob_a.stat_i);
B printf("ob_b.stat_i = %d\n",ob_b.stat_i);

   ob_b.stat_i=300;
C printf("ob_b.stat_i = %d\n",ob_b.stat_i);
}

@"ob_a.stat_i = 100"と表示されます。
A"ob_a.stat_i = 200"と表示されます。
B"ob_b.stat_i = 200"と表示されます。
C"ob_b.stat_i = 300"と表示されます。


 
    
A8ネット
 ・人気度:★★★★★
 ・言わずと知れた人気ASP

 
楽天市場
 ・人気度:★★★★★
 ・誰でも安心、楽天市場で

タワーレコード
 ・人気度:★★★★☆
 ・CD/DVDならタワレコで

 
■ネット証券関連おすすめ
イー・トレード証券
 ・人気度:★★★★★
 ・初心者はこちらから

マネックス証券
 ・人気度:★★★★★
 ・中級者ならこちらから






Copyright(C)2007 得@スキルアップ塾.comAll right reserved.