about summary refs log tree commit diff
path: root/usth/ICT2.2/labwork/3/C++/shopping-cart.h
diff options
context:
space:
mode:
authorNguyễn Gia Phong <vn.mcsinyx@gmail.com>2019-12-15 10:34:58 +0700
committerNguyễn Gia Phong <vn.mcsinyx@gmail.com>2019-12-15 15:00:00 +0700
commit67393f42f41ab92219deb549f711121c4dab845b (patch)
treeebd0eb6c8a3d3bd69937312179aeaf273ea29c80 /usth/ICT2.2/labwork/3/C++/shopping-cart.h
parentb38d9929f7a015b56b847fde7e83f814f354497e (diff)
downloadcp-67393f42f41ab92219deb549f711121c4dab845b.tar.gz
[usth/ICT2.2] Object Oriented Programming
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 (); }
+};