我正在编写一个打砖块游戏的克隆版本。我曾经有一个版本,其中只有一层结构。这个版本的运行速度为70帧每秒。
为了使代码更加清晰,我决定代码应该有更多的抽象,并创建了更多的结构体。大多数情况下,我有两到三层深的结构体。这个版本的运行速度为30帧每秒。
由于结构体之外还有其他差异,所以我想问:在C语言中使用很多结构体会显著降低代码的运行速度吗?
例如,在第二个版本中,我使用了:
为了使代码更加清晰,我决定代码应该有更多的抽象,并创建了更多的结构体。大多数情况下,我有两到三层深的结构体。这个版本的运行速度为30帧每秒。
由于结构体之外还有其他差异,所以我想问:在C语言中使用很多结构体会显著降低代码的运行速度吗?
例如,在第二个版本中,我使用了:
struct Breakout
{
Ball ball;
Paddle paddle;
Level* levels;
}
struct Level
{
Bricks* bricks;
}
所以,我经常使用breakout.levels[level_in_play].bricks[i].visible这样的语句。这可能是问题的原因吗?
谢谢。