summaryrefslogtreecommitdiffstats
path: root/variablearray.h
diff options
context:
space:
mode:
authorKyle K <kylek389@gmail.com>2012-05-06 17:37:28 -0500
committerKyle Kaminski <kyle@kkaminsk.com>2012-05-06 17:37:28 -0500
commitdb8d48f8ab912989726869ac7352ae9b0822515a (patch)
tree7ed3d5eab98784dcd50a639863e5192be41a4880 /variablearray.h
downloadcollection++-db8d48f8ab912989726869ac7352ae9b0822515a.tar.gz
collection++-db8d48f8ab912989726869ac7352ae9b0822515a.tar.bz2
collection++-db8d48f8ab912989726869ac7352ae9b0822515a.zip
initial commitHEADmaster
Diffstat (limited to 'variablearray.h')
-rw-r--r--variablearray.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/variablearray.h b/variablearray.h
new file mode 100644
index 0000000..8b793a3
--- /dev/null
+++ b/variablearray.h
@@ -0,0 +1,37 @@
+#ifndef _VARIABLEARRAY_H_
+#define _VARIABLEARRAY_H_
+
+#include "collection.h"
+#include <string>
+#include <sstream>
+#include <vector>
+
+#define ARR_STARTING_SIZE 8
+
+class VariableArray : public Collection
+{
+ public:
+ VariableArray();
+ VariableArray(const VariableArray&);
+ VariableArray& operator=(const Collection&);
+ ~VariableArray();
+
+ virtual void add(int);
+ virtual bool remove(int);
+ virtual int operator[](const int);
+ virtual VariableArray *copy(void);
+
+ /* override these methods that had empty definitions in the interface */
+ void iterate(void (*)(int *));
+ bool contains(int) const;
+
+ std::string print(void) const;
+
+ protected:
+
+ private:
+ std::vector<int> arr;
+};
+
+#endif
+