GameEngineArchitecture读书笔记(二)

DLL

  • 很多公司会采用完全的静态链接, 这样比较省事, 也比较安全
  • 静态链接通常比较慢(编译时间影响开发效率), 而且EXE也比较大
  • DLL的话如果不使用interface封装会暴露很多类定义
  • 如果使用C++/CLI的话不能使用静态链接库

  • Debug
    • Release能重现而Debug不能重现的BUG通常是变量没初始化
    • DMP文件可以方便地重现崩溃时的堆栈调用
  • Coding
    • 代码规范是一个项目/引擎必须制定的东西, C++标准的缺乏造成每人一种风格习惯
    • CodeReview其实是统一风格习惯的一种有效措施
    • AtomString/HashString: 这东西本身是为了提高效率而出现的, 但是用不好就会成为影响效率的东西
    • Endianness: 主机平台跟Win32是不一样的, 生成二进制格式需要转换
    • 全局static变量的初始化顺序没办法控制, 不过函数里的static变量确可以在调用时初始化, 这样可以解决一部分初始化顺序问题
    • dbghelp可以通过地址反查代码行, 对付内存泄露比较方便
    • SIMD要求128bit对齐的内存, 如XNAMath
    • Exception:
      • 主机平台应该避免使用
      • 有时为了保证稳定性不得不用, 比如美术的编辑工具, 至少要让他们有保存一下的时间, 不要直接崩溃了...
    • 模块的初始化/销毁可以使用堆栈处理, 通常这两边的顺序正好相反
    • 数学库现在最好的选择是XNAMath, 自己去实现感觉吃力不讨好, 而且也不敢保证没BUG
    • 容器最好自己实现, STL的限制有很多;
      • 通用型的效率比不上针对特定问题优化过的
      • 内存占用的要多一些(主机平台很看重这个)
      • 动态分配的内存太多
      • 各平台的实现不一样, 对于平台移植有些麻烦
    • 最好不要用boost
    • 字符串
      • 尽量减少const char*的使用(个人习惯)
      • 比于比较操作频繁的, 可以使用HashString
      • 中文编码处理需要考虑
      • 最好把所有字符串做成一个表格, 游戏里通过ID使用
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值