ページ 11

C/C++のコードでわからないことが・・・

Posted: 2010年12月29日(水) 11:54
by Suikaba
また、ここで質問させていただきます。
まず、ソースを張らせていただきますね。

コード:


template <class T>
class CSample
{
public:
	// コンストラクタ
	CSample(T t) : m_value(t){}

	// メンバ関数テンプレート
	template <class U>
	void func(const U& u)
	{
		std::cout << m_value << std::endl;
		std::cout << u << std::endl;
	}
private:
	T m_value;
};

ここの7行目のコンストラクタの部分ですが、この : はなにを示しているのでしょうか。
こんな私ですが、どうかお願いいたします。

Re: C/C++のコードでわからないことが・・・

Posted: 2010年12月29日(水) 12:33
by softya(ソフト屋)
それは、C++のコンストラクタの初期化リストの始まりを示します。
m_valueが初期化されるメンバ変数です。

初期化リストの質問をされていますが、C++のテンプレート機能自体は理解されていますか?

Re: C/C++のコードでわからないことが・・・

Posted: 2010年12月29日(水) 15:16
by Suikaba
>>softya(ソフト屋)さん

返信ありがとうございます。
テンプレートは一応理解していますが、まだ勉強中の身ですのでまた見直していくつもりです。
ありがとうございました。