From 200952ad4004f6ee5527598622505adbe84df8af Mon Sep 17 00:00:00 2001 From: Emiel Bruijntjes Date: Tue, 4 Mar 2014 15:11:46 +0100 Subject: implemented cloning of objects --- Examples/CppClassesInPhp/cppclassinphp.cpp | 9 ++++++--- Examples/CppClassesInPhp/cppclassinphp.php | 18 +++++++++++++++++- 2 files changed, 23 insertions(+), 4 deletions(-) (limited to 'Examples') diff --git a/Examples/CppClassesInPhp/cppclassinphp.cpp b/Examples/CppClassesInPhp/cppclassinphp.cpp index 95f909b..20c04c4 100644 --- a/Examples/CppClassesInPhp/cppclassinphp.cpp +++ b/Examples/CppClassesInPhp/cppclassinphp.cpp @@ -14,14 +14,17 @@ using namespace std; class MyCustomClass : public Php::Base // , public Php::Countable { private: - int _x; + int _x = 3; public: MyCustomClass() { - _x = 3; std::cout << "MyCustomClass::MyCustomClass" << std::endl; - std::cout << _x << std::endl; + } + + MyCustomClass(const MyCustomClass &that) + { + std::cout << "MyCustomClass::MyCustomClass copy constructor" << std::endl; } virtual ~MyCustomClass() diff --git a/Examples/CppClassesInPhp/cppclassinphp.php b/Examples/CppClassesInPhp/cppclassinphp.php index c969a4c..7fd4f64 100644 --- a/Examples/CppClassesInPhp/cppclassinphp.php +++ b/Examples/CppClassesInPhp/cppclassinphp.php @@ -18,7 +18,23 @@ class TestClass } //create a MyCustomClass object, which is an object of a C++ class -$object = new MyClass(); +$object1 = new MyClass(); + +//echo("prop x: ".$object1->x."\n"); + +$object1->x = 10; +$object1->y = 20; + +echo("prop x: ".$object1->x."\n"); +echo("prop y: ".$object1->y."\n"); + +$object2 = clone $object1; + +echo("prop x: ".$object2->x."\n"); +echo("prop y: ".$object2->y."\n"); + + +return; // run a function of the class $obj = $object->myMethod("MyClass"); -- cgit v1.2.3