gravatar
kpeter (Peter Kovacs)
kpeter@inf.elte.hu
Minor bug fix in maps.h. Fixed the existing two variants of stdMap() and added two new variants.
0 1 0
default
1 file changed with 23 insertions and 2 deletions:
↑ Collapse diff ↑
Show white space 24 line context
... ...
@@ -241,40 +241,61 @@
241 241
    void setAll(const T &t) {
242 242
      _value = t;
243 243
      _map.clear();
244 244
    }    
245 245

	
246 246
  };
247 247
  
248 248
  ///Returns a \c StdMap class
249 249

	
250 250
  ///This function just returns a \c StdMap class with specified 
251 251
  ///default value.
252 252
  ///\relates StdMap
253
  template<typename K, typename V, typename Compare = std::less<K> > 
253
  template<typename K, typename V, typename Compare> 
254 254
  inline StdMap<K, V, Compare> stdMap(const V& value = V()) {
255 255
    return StdMap<K, V, Compare>(value);
256 256
  }
257 257

	
258
  ///Returns a \c StdMap class
259

	
260
  ///This function just returns a \c StdMap class with specified 
261
  ///default value.
262
  ///\relates StdMap
263
  template<typename K, typename V> 
264
  inline StdMap<K, V, std::less<K> > stdMap(const V& value = V()) {
265
    return StdMap<K, V, std::less<K> >(value);
266
  }
267
  
258 268
  ///Returns a \c StdMap class created from an appropriate std::map
259 269

	
260 270
  ///This function just returns a \c StdMap class created from an 
261 271
  ///appropriate std::map.
262 272
  ///\relates StdMap
263
  template<typename K, typename V, typename Compare = std::less<K> > 
273
  template<typename K, typename V, typename Compare> 
264 274
  inline StdMap<K, V, Compare> stdMap( const std::map<K, V, Compare> &map, 
265 275
                                       const V& value = V() ) {
266 276
    return StdMap<K, V, Compare>(map, value);
267 277
  }
268 278

	
279
  ///Returns a \c StdMap class created from an appropriate std::map
280

	
281
  ///This function just returns a \c StdMap class created from an 
282
  ///appropriate std::map.
283
  ///\relates StdMap
284
  template<typename K, typename V> 
285
  inline StdMap<K, V, std::less<K> > stdMap( const std::map<K, V, std::less<K> > &map, 
286
                                             const V& value = V() ) {
287
    return StdMap<K, V, std::less<K> >(map, value);
288
  }
289

	
269 290
  /// \brief Map for storing values for keys from the range <tt>[0..size-1]</tt>
270 291
  ///
271 292
  /// This map has the <tt>[0..size-1]</tt> keyset and the values
272 293
  /// are stored in a \c std::vector<T>  container. It can be used with
273 294
  /// some data structures, for example \c UnionFind, \c BinHeap, when 
274 295
  /// the used items are small integer numbers.
275 296
  /// This map meets the \ref concepts::ReferenceMap "ReferenceMap" concept.
276 297
  ///
277 298
  /// \todo Revise its name
278 299
  template <typename T>
279 300
  class IntegerMap : public MapBase<int, T> {
280 301

	
0 comments (0 inline)