mirror of
https://github.com/boostorg/python.git
synced 2026-01-21 05:02:17 +00:00
https://svn.boost.org/svn/boost/trunk ........ r43417 | danieljames | 2008-02-26 22:04:55 +0000 (Tue, 26 Feb 2008) | 2 lines Fix a link to Boost.Bimap. ........ r43418 | danieljames | 2008-02-26 22:07:25 +0000 (Tue, 26 Feb 2008) | 2 lines Change another link that's no longer in the repository to link to the website. ........ r43422 | danieljames | 2008-02-27 18:51:14 +0000 (Wed, 27 Feb 2008) | 1 line Fix broken copyright urls. Fixes #1573. ........ r43423 | danieljames | 2008-02-27 19:22:01 +0000 (Wed, 27 Feb 2008) | 1 line Fix incorrect links to copyright of the form 'http:#www.boost.org ........ [SVN r43425]
42 lines
807 B
C++
42 lines
807 B
C++
/* Copyright Bruno da Silva de Oliveira 2003. Use, modification and
|
|
distribution is subject to the Boost Software License, Version 1.0.
|
|
(See accompanying file LICENSE_1_0.txt or copy at
|
|
http://www.boost.org/LICENSE_1_0.txt)
|
|
*/
|
|
namespace virtual_ {
|
|
|
|
struct C
|
|
{
|
|
public:
|
|
virtual int f()
|
|
{
|
|
return f_abs();
|
|
}
|
|
|
|
virtual void bar(int) {}
|
|
virtual void bar(char*) {}
|
|
|
|
const char* get_name()
|
|
{
|
|
return name();
|
|
}
|
|
virtual int dummy() { return 0; }
|
|
|
|
protected:
|
|
virtual int f_abs() = 0;
|
|
|
|
private:
|
|
virtual const char* name() { return "C"; }
|
|
};
|
|
|
|
struct D
|
|
{
|
|
virtual int dummy() { return 0; }
|
|
};
|
|
|
|
inline int call_f(C& c) { return c.f(); }
|
|
inline int call_dummy(C* c) { return c->dummy(); }
|
|
inline int call_dummy(D* d) { return d->dummy(); }
|
|
|
|
}
|