>>918
こうすると値と空白を区別できる配列が作れる。
#include <boost/optional.hpp>
#include <iostream>

void func(const boost::optional<int>& Val)
{
if(Val)
std::cout<<"Value="<<*Val<<std::endl;
else
std::cout<<"space"<<std::endl;
}

int _tmain(int argc, _TCHAR* argv[])
{
boost::optional<int> a[100][100];

a[10][10]=333;

func(a[10][10]); // 333が出力される。
func(a[11][12]); // 値が設定されていないのでspaceが出力される。

return 0;
}