wildturkey.hpp

来自「深入浅出设计模式(书配套c++源代码)。包含20个设计模式的c++实现。」· HPP 代码 · 共 36 行

HPP
36
字号
#ifndef	_HFDP_CPP_FLYWEIGHT_FOWLWEIGHT_WILD_TURKEY_HPP_
#define _HFDP_CPP_FLYWEIGHT_FOWLWEIGHT_WILD_TURKEY_HPP_

#include "FowlWeight.hpp"

namespace HeadFirstDesignPatterns {
namespace FlyWeight {
namespace FowlWeight {

// ConcreteFlyweight (once its wrapped in an adapter)

class WildTurkey : public Turkey {

	private: std::string _type;
	private: std::string _sound;
	private: std::string _walk;

	public: WildTurkey() : 
		_type( "Wild Turkey" ), _sound( "Gobble gobble" ), _walk( "struts" ) {
	}
	public: void gobble() const {
		std::cout << _sound.c_str();
	}
	public: void walk() const {
		std::cout << _walk.c_str();
	}
	public: std::string toString() const {
		return _type.c_str();
	}
 };

} // namespace FowlWeight
} // namespace FlyWeight
} // namespace HeadFirstDesignPatterns

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?