about summary refs log tree commit diff
path: root/usth/ICT2.2/labwork/3/C++/shopping-cart.h
diff options
context:
space:
mode:
Diffstat (limited to 'usth/ICT2.2/labwork/3/C++/shopping-cart.h')
-rw-r--r--usth/ICT2.2/labwork/3/C++/shopping-cart.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/usth/ICT2.2/labwork/3/C++/shopping-cart.h b/usth/ICT2.2/labwork/3/C++/shopping-cart.h
new file mode 100644
index 0000000..c1450e7
--- /dev/null
+++ b/usth/ICT2.2/labwork/3/C++/shopping-cart.h
@@ -0,0 +1,16 @@
+#include <string>
+#include <unordered_map>
+
+using namespace std;
+
+class ShoppingCart
+{
+  // quite of an improvement over the Java version
+  unordered_map<string, int> contents;
+public:
+  void add_to_cart (string item) { contents[item]++; }
+  void remove_from_cart (string item) { contents[item] = 0; }
+  // to make this class useful anyhow
+  int count (string item) { return contents[item]; }
+  void check_out () { contents.clear (); }
+};