staticメンバ変数の使用方法

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
dic

staticメンバ変数の使用方法

#1

投稿記事 by dic » 16年前

基本的なことでつまづいてるので教えてもらえないでしょうか?
下記にあるソースをコンパイルすると

error C2040: 'public: static int * A::b' : 'int' は 'int [10]' と間接操作のレベルが異なります。

というコンパイルエラーがでます

そこで、
int[10] A::b;
としてもエラーがでるので、どうやってstaticメンバ変数の実体を定義するのでしょうか?
#include	<stdio.h>

class	A
{
public:
	static	int	a;
	static	int	b[10];
};

int	A::a = 0;
int	A::b;

int		main()
{
	printf( "%d\n", A::a );

	int	i;
	for( i=0; i<10; i++ )
		printf( "%d\n", A::b );
	return 0;
}

MNS

Re:staticメンバ変数の使用方法

#2

投稿記事 by MNS » 16年前

えっと、
int A::b;

int A::b[10];
ではないでしょうか?

dic

Re:staticメンバ変数の使用方法

#3

投稿記事 by dic » 16年前

なるほど そっちに配列だと定義するのですね
解決しました
ありがとうございました

閉鎖

“C言語何でも質問掲示板” へ戻る