#include <xtd/collections/generic/ienumerator>
#include <xtd/collections/generic/list>
#include <xtd/console>
 
 
  box(
int l, 
int w, 
int h) : length{l}, width {w}, height {h} {}
 
  
  int length = 0;
  int width = 0;
  int height = 0;
  
  int32 compare_to(const ::box& o) 
const noexcept override {
return 0;}
 
  bool equals(const ::box& o) const noexcept override {return length == o.length && width == o.width && height == o.height;}
  string to_string() const noexcept {return string::format("box [length={}, width={}, height={}]", length, width, height);}
};
 
 
public:
  explicit box_enumerator(const box_collection& boxes) : boxes {boxes} {}
  
  const ::box& current() const override {return boxes[cur_index];}
  bool move_next() override {return ++cur_index < boxes.size();}
  
private:
  const box_collection& boxes;
};
 
auto main() -> int {
  auto boxes = box_collection {{10, 20, 30}, {20, 5, 10}, {12, 3, 7}};
}
 
Represents a boxed integer object.
Definition box_integer.hpp:52
 
Represents a boxed object.
Definition box.hpp:53
 
Supports a simple iteration over a generic collection.
Definition enumerator.hpp:31
 
const type_t & current() const override
Gets the element in the collection at the current position of the enumerator.
Definition enumerator.hpp:55
 
bool move_next() override
Advances the enumerator to the next element of the collection.
Definition enumerator.hpp:64
 
Supports a simple iteration over a generic collection.
Definition ienumerator.hpp:58
 
Represents a strongly typed list of objects that can be accessed by index. Provides methods to search...
Definition list.hpp:71
 
Defines a generalized comparison method that a value type or class implements to create a type-specif...
Definition icomparable.hpp:21
 
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition iequatable.hpp:22
 
int32_t int32
Represents a 32-bit signed integer.
Definition int32.hpp:23
 
size_t size
Represents a size of any object in bytes.
Definition size.hpp:23
 
The xtd::collections::generic namespace contains interfaces and classes that define generic collectio...
Definition comparer.hpp:15
 
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.hpp:10