0

私は次のようなコードを持っています:

   int c1 = 1; set<int> s1; s1.insert(c1); // Add a number to a set
   interval_map< date, set<int> > cmap; // Declare an interval_map
   discrete_interval<date> range1 = discrete_interval<date>::closed(from_string("2012-01-01"), from_string("2012-01-30")); // Define the interval
   cmap += make_pair(range1, s1); // Associate the interval with the set

これはうまくいきます。

しかし、上記のコードで「セット」を「リスト」に変更すると、ブーストが文句を言います。

値としてサポートされるのは「セット」だけですか?

ありがとう!

4

1 に答える 1

0

そのためには、集約クラスに operator+ が必要です。おそらく、std::set に where operator+ を定義したことでしょう。

于 2012-07-29T01:19:57.583 に答える