我们都知道C++是一种弱类型语言.它并不总是方便直观.例如,从double到int的隐式转换会导致精确丢失.关于变通方法的任何想法?
我正在尝试使用HeadFirst从java到C++的策略模式的端口示例
#include "iostream" using namespace std;
class IFlyBehavior
{
public:
virtual void fly() = 0;
};
class FlyWithWings : public IFlyBehavior
{
public:
void fly() override
{
cout << "fly!";
}
};
class FlyNoWay : public IFlyBehavior
{
public:
void fly() override
{
cout << "no fly!";
}
};
class IQuackBehavior
{
public:
virtual void quack() = 0;
};
class Quack : public IQuackBehavior
{
public:
void quack() override
{
cout << "Quack!";
}
};
class Squeak : public IQuackBehavior …Run Code Online (Sandbox Code Playgroud)