• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2011 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4 
5 class Callback {
6 public:
~Callback()7 	virtual ~Callback() { }
run()8 	virtual std::string run() { return "Callback::run"; }
9 };
10 
11 class Caller {
12 private:
13 	Callback *callback_;
14 public:
Caller()15 	Caller(): callback_(0) { }
~Caller()16 	~Caller() { delCallback(); }
delCallback()17 	void delCallback() { delete callback_; callback_ = 0; }
setCallback(Callback * cb)18 	void setCallback(Callback *cb) { delCallback(); callback_ = cb; }
19 	std::string call();
20 };
21