ページ 11

c++ multi_array のクラスへの組み込み

Posted: 2013年10月19日(土) 18:01
by yum@

コード:

 
#include <boost/multi_array.hpp>

typedef boost::multi_array<int, 2> MyArray;

class A{
private:
	
    MyArray NineField(boost::extents[3][3]);
    
public:
	A();
};

A::A(){
}


や、

コード:

 
#include <boost/multi_array.hpp>

typedef boost::multi_array<int, 2> MyArray;

class A{
private:

    MyArray NineField;	

public:
	A();
};

A::A(){
	
	NineField( boost::extents[3][3]);	
}

とかいても、コンパイルエラーとなります。(エラー内容は長いので省略)
boostライブラリがビルドされていないわけではありません。
どう書けばいいのでしょうか?

Re: c++ multi_array のクラスへの組み込み

Posted: 2013年10月19日(土) 18:44
by h2so5
初期化子リストを使用します

コード:

#include <boost/multi_array.hpp>
 
typedef boost::multi_array<int, 2> MyArray;
 
class A{
private:
    MyArray NineField;
    
public:
    A();
};
 
A::A() : 
NineField(boost::extents[3][3])
{

}

Re: c++ multi_array のクラスへの組み込み

Posted: 2013年10月21日(月) 07:14
by yum@
遅くなりましたが回答ありがとうございます。
なるほど・・・ もう一度クラスについて勉強しなおしてみます。