小编Tri*_*son的帖子

使用大量多态性是不是很糟糕?

我听说使用大量的多态性是不好的,并且尽可能避免多态性是更好的代码设计.这是真的?

oop polymorphism

5
推荐指数
1
解决办法
448
查看次数

这是坏代码吗?

我一直在使用这种代码风格一段时间,我通常会在它前面创建一个"ID"的类,将它放在一个头文件中,然后创建一个.cpp文件并放一个名为"IDClassnameLocal"的类.我在抽象头类中创建纯虚函数,然后在.cpp类中创建普通虚函数,并让它继承抽象头类.

这是不好的代码设计,我编码有效吗?

  • 我将ID(标识)放在类名前面,以防止重新定义和清洁.

例:

// Player.h // ////////////////////////////////////////////////////////////////
class IDPlayer {
public:
    virtual ~IDPlayer(void) {} // Destructor

    virtual void PlayerData(void) = 0;
    virtual void Controls(void) = 0;
};
extern IDPlayer* idplayer;

// Player.cpp // //////////////////////////////////////////////////////////////
class IDPlayerLocal : public IDPlayer {
public:
    IDPlayer(void) {} // Constructor

    virtual void PlayerData(void);
    virtual void Controls(void);
};
IDPlayerLocal idplayerLocal;
IDPlayer* idplayer = &idplayerLocal;
// Class Function Definitions
void IDPlayerLocal::PlayerData(void) {
    Player.X = 400;
    Player.Y = 500;

    Player.W = 20;
    Player.H = 20;

    Player.VelocityX = …
Run Code Online (Sandbox Code Playgroud)

c++ polymorphism performance

0
推荐指数
1
解决办法
212
查看次数

标签 统计

polymorphism ×2

c++ ×1

oop ×1

performance ×1