C/C++程序员的Lua入门指南

需积分: 9 2 下载量 113 浏览量 更新于2024-07-28 收藏 204KB PDF 举报
“lua for C++.pdf 是一本专为C/C++程序员设计的Lua快速入门指南,由RobertZ在2010年编写。本书旨在帮助读者理解和掌握Lua中与C/C++显著不同的概念和模式,颠覆传统的编程世界观。全书分为初阶、进阶和高阶三个部分,读者可以从头至尾逐步学习,其中标有“*”的章节关于面向对象的内容可以跳过。作者强调,本书并非Lua参考手册,因此不会深入介绍所有函数,建议读者在实践中结合官方文档学习。此外,作者还提供了开源Lua调试器RLdb和相关讨论站点。” 在初阶话题中,介绍了Lua的八种基本数据类型: 1. 数值(number):内部以double类型存储,支持浮点数运算。 2. 字符串(string):以零结尾,可包含任意字符,不同于C字符串,是其超集。 3. 布尔(boolean):只有true和false两个值。 4. 函数(function):是Lua的核心概念,不同于C的函数或函数指针。 5. 表(table):异构哈希表,是Lua中的动态数组和关联数组,非常灵活。 6. userdata:用于用户(非脚本用户)定义的C数据结构,仅能被脚本读取,不能创建。 7. 线程(thread):Lua的协作线程(coroutine),非抢占式,用于并发执行。 8. nil:表示空或无值,与C的NULL不同,不是空指针。 书中通过示例展示了函数的用法,如`function foo(a, b, c)`,函数可以返回多个值,如`return sum, c`。在调用函数时,可以使用平行赋值`r1, r2 = foo(1, '123', 'hello')`,输出结果是`1 "123"`,显示了函数的返回值如何被赋值到多个变量。 通过这本书,C/C++程序员将能够快速掌握Lua的基础,并能够在实际项目中应用这些知识。对于想扩展技能范围,或者在现有项目中集成Lua的开发者来说,这是一份非常实用的资源。