summaryrefslogtreecommitdiff
path: root/example
diff options
context:
space:
mode:
authorWolfgang Draxinger <dw@optores.de>2019-07-04 20:00:17 +0200
committerWolfgang Draxinger <dw@optores.de>2019-07-04 20:00:17 +0200
commitac1e78efa910cac81d104a92ec971d984dcd26a1 (patch)
tree98c2a1875cbf84e0070bc457efb4cfbf3f701eb0 /example
downloaddwu-ac1e78efa910cac81d104a92ec971d984dcd26a1.tar.gz
dwu-ac1e78efa910cac81d104a92ec971d984dcd26a1.tar.bz2
dwu::operators
Diffstat (limited to 'example')
-rw-r--r--example/Makefile8
-rw-r--r--example/operators.cc45
2 files changed, 53 insertions, 0 deletions
diff --git a/example/Makefile b/example/Makefile
new file mode 100644
index 0000000..f26d3df
--- /dev/null
+++ b/example/Makefile
@@ -0,0 +1,8 @@
+CXXFLAGS+=-I../include
+
+.PHONY: all
+
+all: operators
+
+operators: CC=$(CXX)
+operators: operators.o
diff --git a/example/operators.cc b/example/operators.cc
new file mode 100644
index 0000000..cfcd529
--- /dev/null
+++ b/example/operators.cc
@@ -0,0 +1,45 @@
+#include <iostream>
+
+#include <vector>
+#include <list>
+
+#include <dwu/operators>
+
+template<class S, class T>
+static void dump(S const &s, T const &v)
+{
+ std::cout << s << '{';
+ for( auto const &x : v ){
+ std::cout << x << ", ";
+ }
+ std::cout << '}' << std::endl;
+}
+
+int main(int argc, char *argv[])
+{
+ using namespace dwu::operators;
+
+ std::vector<int> va = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
+ dump("va: ", va);
+
+ auto vb = va + 10;
+ auto vc = 20 + va;
+ dump("vb = va + 10: ", vb);
+ dump("vc = 20 + va: ", vc);
+
+ vb += 30;
+ dump("vb += 30: ", vb);
+ vc -= 40;
+ dump("vc -= 40: ", vc);
+
+ auto vd = vb * vc;
+ dump("vd = vb * vc: ", vd);
+
+ std::list<float> la = {100, 101, 101, 103, 104, 105};
+ dump("la: ", la);
+
+ auto rr = la - vd;
+ dump("rr = la - vd: ", rr);
+
+ return 0;
+}