首页 > 编程语言 >黑窗口编程到底有什么用?

黑窗口编程到底有什么用?

时间:2022-11-04 14:36:57浏览次数:37  
标签:窗口 游戏 到底 编程 学生 vector 数据结构 循环

首先、要明确一点、带图形的程序的底层也是黑窗口编程

图形的显示只占一个程序的一小部分代码(从费脑子的程度考虑、图形的显示本身并不是很难、无非是基本图元组合、但显示在哪里、怎么更新坐标、就有很大说法了)

数据的结构、对结构的操作占最大多数

比如、上课学的for 循环好像就能求个100以内的和

但 for 循环、其实也可以:

  1. 对所有控件进行循环、每个控件绘制自己

  2. 对所有游戏对象进行循环、每个对象更新自己的位置

  3. 游戏对象和游戏对象之间检查碰撞

   ...

比如、上课学的 stl 库只能存学生的信息、然后就是把学生打印出来,增删改查

但换个视角、假如学生具有三维的坐标、具有3d模型,那么此时的 vector 还是可以存入学生(当然存个指向这些信息的指针就行了)

并且只要迭代这个vector、就能把一批学生的模型都加载到3d场景里!!(怎么去加载、那是别人的更底层的API该考虑的事)

线性容器可以管理一批事物、但线性容器具有局限性、这时候就得用别的数据结构、别的数据结构存在的动机,就是因为可能在某些操作时用普通的数据结构效率不高,

比如、游戏场景中有一大堆物体、难道任何物理都要两两检查一下碰撞?那就太复杂了、而且也不符合游戏的逻辑

所以需要把空间划分一下、每个小区域内可能产生碰撞、分别进行检查、显然这种操作不可能在 vector 上进行了!

 

总而言之:

  一切东西就是上课学的那些、但人们的想象力、抽象能力是无穷的、于是诞生了操作系统、编译器、图形学、web开发、人工智能

  表面上很难把 for 循环、读取文件、stl 之类的 “low”操作和游戏开发之类的高级话题联系起来、但本质上一切软件都是在这些基础语法之上构建的。

标签:窗口,游戏,到底,编程,学生,vector,数据结构,循环
From: https://www.cnblogs.com/gs590/p/16857633.html

相关文章