« C言語:extern | HOME | C言語:static 変数 »

C言語:static 関数への使用

static宣言された関数は静的関数と呼ばれ、関数外静的変数と同じように関数の有効範囲が定義されているファイル内のみ有効で、定義されているファイル外では利用できなくなります。
これは、オブジェクト指向のカプセル化(情報隠蔽)に似ています。
 
一口メモ
カプセル化というのは、誰でも利用できる関数や変数は極力少なくする事を言います。
これは、他の人(外部のファイル)は絶対に呼び出してはいけない、もしくは呼び出す必要が無いような関数は外部から見えなくしてしまった方が誤使用が減り、安全性が高くなるとい考えに基づいています。

 
静的変数を作る方法はいたって簡単で、プロトタイプ宣言の頭と関数定義の頭に static と書くだけです。注意点としては、静的関数のプロトタイプ宣言をヘッダファイルに書いてはいけません。これは静的関数の性質を考えれば当然の事ですが、一応頭に入れておいてください。
/* 静的関数の関数プロトタイプ宣言の例 */
static int testfunction( int value );

/* 静的関数の関数定義の例 */
static int testfunction( int value )
{
int a;
    :
    :
    :
return a;
}


http://www.paw.hi-ho.ne.jp/takadayouhei/technic/39.html


 

ハワイ旅行| サトピの子連れグアム旅行記| グアム旅行の情報サイト| ガーデニング|

Copyright (C) 2009 Anne Corporation. All Rights Reserved.