diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-10-30 17:11:00 -0300 |
---|---|---|
committer | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-10-30 17:11:00 -0300 |
commit | 684aa0235c757a614963deaa4337202b1bc6c997 (patch) | |
tree | 36c88e67d0ec1471a764aeebfc3a085140752914 /tests/libsample/reference.cpp | |
parent | 5c190b426be32749bb802c15ef2c980b057af658 (diff) |
added new test cases to check if a value-type object passed as reference to
regular, virtual and reimplemented virtual methods are being altered in place
Diffstat (limited to 'tests/libsample/reference.cpp')
-rw-r--r-- | tests/libsample/reference.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/tests/libsample/reference.cpp b/tests/libsample/reference.cpp index c61672849..08805dc5b 100644 --- a/tests/libsample/reference.cpp +++ b/tests/libsample/reference.cpp @@ -40,7 +40,7 @@ using namespace std; void Reference::show() const { - cout << "Reference.objId: " << m_objId; + cout << "Reference.objId: " << m_objId << ", address: " << this; } int @@ -67,3 +67,15 @@ Reference::callUsesConstReferenceVirtual(const Reference& r, int inc) return usesConstReferenceVirtual(r, inc); } +void +Reference::alterReferenceIdVirtual(Reference& r) +{ + r.setObjId(r.objId() * Reference::multiplier()); +} + +void +Reference::callAlterReferenceIdVirtual(Reference& r) +{ + alterReferenceIdVirtual(r); +} + |