- 博客(150)
- 资源 (15)
- 收藏
- 关注
原创 cocos 2dx-Lua Label文本设置自动换行
直接上代码-- Label文本换行function FunSetLinefeed( strText, nLineWidth ) --文本,行宽 --读取每个字符做中文英文判断,并且记录大小 local nStep = 1 local index = 1 local ltabTextSize = {} while true do c = string.sub(strText, nStep, nStep) b = string.byte(c) if b > 128 then
2021-06-19 13:57:54
1709
原创 Argument value 10880 is outside the valid range [0, 255]
文章目录今天一不小心把自己的mac系统升级了,为后续的学习带来了一堆的麻烦。写这篇博文是希望各种同是ios开发的同行不要踩雷。系统升级到最新之后,也只能将就将Xcode升级到最新。于是在创建cocos 工程时,就遇到了下面这个问题双击左边提示错误的地方,会直接跳转到错误代码处鼠标选中bt_splat_ps,右键,Jump to Definition就会跳转到该变量定义的地方bt_splat_ps是一个定义宏,直接指向 bt_pshufd_ps同理,也可以找到定义bt_pshufd_ps的地方
2021-06-09 00:17:15
1053
2
原创 用python检测微信好友是否删除自己
我们在平时生活中使用微信发现微信中有很多已经将自己删除了的好友,如何在不打扰别人的情况下知道哪些好友删除了自己了?下面我们就用python程序来实现。开发环境:python2源码:#!/usr/bin/env python# coding=utf-8import osimport urllib, urllib2import reimport cookielibimport timeimport xml.dom.minidomimport jsonimport sysimport
2021-04-06 21:14:12
1601
10
原创 Cocos Creator 开发教程(持续更新)
文章目录网络请求json对象转化平台:cocos creator脚本语言:JavaScript官方教程:https://docs.cocos.com/creator/manual/zh/asset-workflow/网络请求cc.loader.load("url",function(err,res){ console.log(res); // res 即请求内容});json对象转化JSON.stringify() 把一个对象转换成json字符串,JSON.parse() 把一个jso
2021-01-23 10:00:57
1713
原创 线程和状态
文章目录多线程Lua状态 Lua语言不支持真正的多线程,即不支持共享内存的抢占式线程。原因有两个,其一是IOS C没有提供这样的功能,因此也没有可移植的方法能在Lua中实现这种机制:其二,也是更重要的原因,在于我们认为在Lua中引入多线程不是一个好主意。 多线程一般用于底层编程。像信号量和监视器这样的同步机制一般都是操作系统上下文提供的,而非应用程序提供。要查找和纠正多线程相关的bug是很困难的,其中有些Bug还会导致安全隐患。此外,程序中的一些需要同步的临界区还可能由于同步而导致性能问题。 多
2020-07-23 20:36:53
1021
原创 Lua管理资源
因此,为了确保DIR的实例能被正确释放,需要把该实例的地址存入一个用户数据中,并且用这个用户数据的远方__gc来释放该结构体。首先,我们需要函数dir.open,该函数是一个工厂函数,Lua调用该函数来创建迭代器;其次,我们需要迭代函数。然而,Lua程序时无法访问这个函数的:该函数被保存在目录的元表中,而用户数据又被保存为迭代函数的上值,因此Lua代码无法访问这些目录。这三个函数的代码结构类似,它们都会检查回调函数表是否为指定的事情定义了Lua处理函数,如果是,则准备好参数并调用这个处理函数。
2020-07-22 00:52:38
420
原创 Mac -XCode 各种目录路径和调试方法
hosts文件所在目录:/private/etc/xcode插件目录:~/Library/Application Support/Developer/Shared/Xcode/Plug-ins模拟器上app应用运行生成缓存文件:删除无影响,可重新生成~/Library/Developer/XCPGDevicesXcode对模拟器缓存路径:如果删除下次运行时间会较长,但不影响使用。~/Library/Developer/Xcode/DerivedDataXcode中卸载多余模拟器位置
2020-07-17 10:54:16
3110
原创 C语言中的用户自定义类型
文章目录用户数据元表面向对象访问数组访问 下面这个示例实现了一种很简单的类型,即布尔类型。选用这个示例的只要动机在于它不涉及复杂的算法,便于我们专注于API的问题。不过尽管如此,这个示例本身还是很有用的。当然,我们可以在Lua中用来表示实现布尔数组。但是,在C语言实现中,可以将每个布尔值存储在一个比特中,所使用的内存量不到使用表方法的3%。 这个示例需要以下定义:#include <limits.h>#define BITS_PER_WORD (CHAR_BIT * sizeof(u
2020-07-16 23:01:47
1307
原创 编写C函数的技巧
文章目录数组操作字符串操作在C函数中保存状态注册表上值共享的上值数组操作 Lua中的“数组”就是姨特殊方式使用的表。像lua-settable和lua-gettable这种用来操作表的通用函数,也可用于操作数组。不过,CAPI为使用整数索引的表的访问和封信提供了专门的函数。void lua_geti (lua_State *L, int index, int key);void lua_seti (lua_State *L, int index, int key);Lua5.3之前的版本只提供
2020-07-09 22:45:28
549
原创 在Lua中调用C语言
文章目录C函数延续C模块 我们说用Lua可以调用C语言函数,但这并不意味着Lua可以调用所有的C函数。当C语言调用Lua函数时,该函数必须遵循一个简单的规则来传递参数和获取结果。同样,当Lua调用C函数时,这个C函数也必须遵循某种规则来获取参数和返回结果。此外,当Lua调用C函数时,我们必须注册该函数,即必须以一种恰当的方式为Lua提供该C函数的地址。 Lua调用C函数时,也使用一个与C语言调用Lua函数时相同类型的栈,C函数从栈中获取参数,并将结果压入栈中。 此处的重点在于,这个栈不是一个全局
2020-06-28 01:00:51
2666
原创 C语言API总览
文章目录第一个示例栈压入元素查询元素其他栈操作使用CAPI进行错误处理处理应用代码中的错误处理库代码中的错误内存分配 Lua是一种嵌入式语言,这就意味着Lua并不是一个独立运行的应用,而是一个库,它可以链接到其他应用程序,将Lua的功能融入这些应用。 因为能够当作库来扩展某个应用程序,所以Lua是一种嵌入式语言。同时,使用了Lua语言的程序也可以在Lua环境中注册新的函数,比如用C语言实现函数,从而增加一些无法直接用Lua语言编写的功能。因此Lua也是一种可扩展的语言。 上述两种对L
2020-06-26 23:21:06
2652
原创 cocos 2dx_lua键盘监听
local function keyboardPressed(KeyCode,event) print(KeyCode) end local function keyboardReleased(KeyCode,event) end local listener = cc.EventListenerKeyboard:create() listener:registerScriptHandler(keyboardPressed, cc.Handler.
2020-06-08 09:48:00
920
原创 Lua使用协程实现多线程
文章目录 协程能够实现一种协作式多线程。每个协程都等价于一个线程。一对yield-resume可以将执行权在不同线程之间切换。不过,与普通的多线程的不同,协程是非抢占的。当一个协程正在运作时,是无法从外部停止它的。只有当协程显式地要求时它才会挂起执行。对于有些应用而言,这并没有问题,而对于另外一些应用则不行。当不存在抢占时,编程简单得多。由于在程序中所有的线程间同步都是显式的,所以我们无须为线程同步问题抓狂,只需要确保一个协程只在它的临界区之外调用yield即可。 不过,对于非抢占式多线程来
2020-06-07 17:35:20
2632
原创 苹果审核机制
这篇文章为大家揭秘苹果的审核机制,希望对你有所帮助。对于苹果审核我们一直抱有疑问的态度,它到底是机审还是人工审核呢?据熟悉该部门的人士透露,虽然苹果确实使用自动过滤器(机审),但该部门仍一直依赖人工审核。机审的作用主要是过滤掉明显不合格审核内容及高效分配工作,提高人工审核的公平性和效率。而所有审核结果,均由苹果的评审员人工进行审核。据脸书、YouTube 知情人士透露,苹果人工审核工作是由苹果内部员工组成。App 评审员最基础是从 iPhone 应用程序开始审核,随着工作经验的累积,培训力度也会随之增加
2020-05-31 13:38:49
2059
原创 Lua cjson安装及部署
在安装lua-cjson时在网上查找了很多文章,关于具体的安装方法众说纷纭,主要原因是因为lua-cjson在安装时需要进行配置的更改,以下是经过实操得到的具体安装步骤。wget http://www.kyne.com.au/~mark/software/download/lua-cjson-2.1.0.tar.gz 下载安装包tar zxvf lua-cjson-2.1.0.tar.gzcd lua-cjson-2.1.0/修改配置文件修改lua版本,默认版本为5.1 (我的当前版本为5.3,可
2020-05-26 17:46:24
1756
原创 Lua反射
文章目录自省机制 反射是程序用来检查和修改其自身某些部分的能力。像Lua语言这样的动态语言支持几种反射机制:环境允许运行时观察全局变量;诸如type和pairs这样的函数允许运行时检查和遍历未知数据结构;诸如load和require这样的函数允许程序在自身中追加代码或更新代码。不过,还有很多方面仍然是缺失的:程序不能检查局部变量,开发人员不能跟踪代码的执行,函数也不知道是被谁调用的,等等。调试库填补了上述缺陷。 调试库是由两类函数组成:自省函数和钩子。自省函数允许我们检查一个正在运行中的程序的几个方
2020-05-26 15:17:09
2545
原创 Lua协程
文章目录协程基础哪个协程占据主循环将协程用作迭代器事件驱动式编程 协程可以颠倒调用者和被调用者的关系,而且这种灵活性解决了软件架构中被称为“谁是老大”或者”谁拥有主循环“的问题。这正是对诸如事件驱动编程、通过构造器构建迭代器和协作式多线程等几个看上去并不相关的问题的泛化,而协程以简单和高效的方式解决了这些问题。 从多线程的角度看,协程与线程类似:协程是一系列的可执行语句,拥有自己的栈、局部变量和指令指针,同时协程又与其他协程共享了全局变量和其他几乎一切资源。线程与协程的主要区别在于,一个多线
2020-05-17 14:22:53
559
原创 lua垃圾收集
文章目录弱引用表记忆函数 Lua语言使用自动内存管理。程序可以创建对象,但却没有函数来删除对象。Lua语言通过垃圾收集自动删除称为垃圾的对象,从而将程序员从内存管理的绝大部分负担中解放出来。更重要的是,将程序员从与内存管理相关的大多数Bug中解放出来。例如无效指针和内存泄露等问题。 在一个理想的环境中,垃圾收集器对程序员来说是不可见的,就像一个好的清洁工不会和其他工人打交道一样。不过,有时即使是智能的垃圾收集器也会需要我们的辅助。在某些关键的性能阶段,我们可能需要将其停止,或者让只在特定的时
2020-05-15 23:17:59
685
原创 lua中的环境(Environment)
文章目录具有动态名称的全局变量全局变量的声明非全局环境 全局变量在大多数变成语言中是让人爱恨交织又不可或缺的。一方面,使用管全局变量会明显地使无关的代码部分纠缠在一起,容易导致代码复杂。另一方面,谨慎地使用全局变量又能更好地表达程序中真正的全局概念;此外,虽然全局常量看似无害,但像Lua语言这样的动态语言是无法区分常量和变量的。像Lua这样的嵌入式语言更复杂:虽然全局变量时再整个程序中均可见的变量,但由于Lua语言是由宿主应用调用代码段的,因此“程序”的概念不明确。 Lua语言通过不使用全局
2020-05-10 15:17:38
975
原创 Lua打乱数组排序
打乱有序数组,生成随机数组local function randomTable(_table, _num) local _result = {} local _index = 1 local _num = _num or #_table while #_table ~= 0 do local ran = math.random(0, #_tabl...
2020-04-27 14:59:49
2026
原创 Lua面向对象编程
文章目录类(class)继承(Inheritance)多重继承(Multiple Lnheritance) 从很多意义上讲,Lua语言中的一张表就是一个对象。首先,表与对象一样,可以拥有状态。其次,表与对象一样,拥有一个与其无关的标识(self);特别地,两个具有相同值的对象(表)是两个不同的对象,而一个对象可以具有多个不同的值;最后,表与对象一样,具有创建者和被创建位置无关的声明周期。...
2020-04-24 22:49:17
545
1
原创 Lua元表和元方法
文章目录算术运算相关的元方法关系运算相关的元方法库定义相关的元方法表相关的元方法__index元方法__newindex元方法具有默认值的表跟踪对表的访问只读的表 通常,Lua语言中的每种类型的值都有一套可预见的操作集合。例如,我们可以将数字相加,可以连接字符,还可以在表中插入键值对等。但是,我们无法将两个表相加,无法对函数做比较,也琺调用一个字符串,除非使用元表。 元表可以修改一...
2020-04-24 14:23:09
1119
原创 Lua实现马儿可夫链算法
文章目录 马尔可夫链算法根据哪个单词能出现在基础文本中由n个前序列单词组成的序列之后,来生成伪随机文本。这里我们假设n为2。 程序的第一部分读取原始文本并创建一个表,该表的键为每两个单词组成的前缀,值为紧跟这个前缀的单词所组成的列表。当这个表构建好后,程序就利用它来生成随机文本,随机文本中每个单词所组成的列表。当这个表构建好后,程序就利用它来生成随机文本,随机文本中每个单词出现在它...
2020-04-23 23:00:17
363
原创 python画素描画
废话不多说,直接上代码from PIL import Image, ImageFilter, ImageOpsimg = Image.open('/Users/demo/Desktop/b.png') # 原图路径def dodge(a,b,alpha): return min(int(a*255/(256-b*alpha)),255)def draw(img,blur=25,alph...
2020-04-23 16:05:55
1365
1
原创 Lua迭代器和泛型for
文章目录迭代器和闭包泛型for的语法迭代器和闭包 迭代器是一种可以让我们遍历一个集合中所有元素的代码结构。在Lua语言中,通常使用函数表示迭代器:每一次调用函数时,函数会返回集合中的”下一个“元素。一个典型的例子是io.read,每次调用该函数时它都会返回标准输入中的下一行,在没有读取的行时返回nil。 所有的迭代器都需要在连续的调用之间保存一些状态,这样才能知道当前迭代所处的位...
2020-04-22 22:00:46
455
原创 Lua中模块和包
文章目录函数 require 通常,Lua语言不会设置规则。相反,Lua语言提供的是足够强大的机制供不同的开发者实现最适合自己的规则。然而,这种方法对于模块而言并不是特别适用。模块系统的主要目标之一就是允许不同的人共享代码,缺乏公共规则就无法实现这样的分享。 Lua语言从5.1版本开始为模块和包定义了一系列的规则。这些规则不需要从语言中引入额外的功能,程序猿可以使用目前为止我们学习...
2020-04-21 20:41:58
791
原创 Lua编译、执行和错误
文章目录编译预编译的代码错误 虽然我们把Lua语言成为解释型语言,但Lua语言总是在运行代码前先预编译源码为中间代码(这没什么大不了的,很多解释型语言也这样做)。编译阶段的存在听上去超出了解释型语言的范畴,但解释型语言的区分并不在与源码是否被编译,而在于是否有能力(且轻易地)执行动态生成的代码。可以认为,正是由于诸如dofile这样函数的的存在,才使得Lua语言能够被称为解释型语言。编译...
2020-04-20 17:26:38
959
原创 用树莓派搭建(虚拟专用网络)服务器
笔者这里是使用树莓派搭建VPN服务器,树莓派是用的ubuntu系统,所以该方法使用于所有的ubuntu系统的服务器. 想要用服务器搭建VPN服务器,你首先得上手一个树莓派,可以参考这里.或者你对VPN不够了解,可以参考这里.安装pptp在终端输入下面命令并回车.sudo apt-get install pptpd配置内网ip策略在终端输入下面命令并回车,进入v
2020-04-20 14:07:31
14310
8
原创 Python中列表 元组 集合 词典的区别
Python 集合(数组)Python 编程语言中有四种集合数据类型:列表、元组、集合、词典列表(List)列表(List) 是一种有序和可更改的集合。允许重复的成员。在 Python 中,列表用方括号编写例:thislist = ["a", "b", "c"]Python 有一组可以在列表上使用的内建方法:元组元组(Tuple) 是一种有序且不可更改的集合。允许重复的成员...
2020-04-20 14:02:44
413
原创 ifconfig命令详解
在我们和计算机打交道的过程中,最常听到的一个词就是“IP”,我们经常也会查看自己电脑的ip在windows电脑上一般用ipconfig来查看电脑IP在linux或者mac电脑上一般用ifconfig来查看电脑IP注意:两个命令是不同的但是在linux或者Mac 电脑执行命令后会出来很多的参数,带着对这些参数的疑惑,特意查看来一下这些参数的含义,总结如下:lo0 = loopback...
2020-04-20 14:02:29
1944
原创 Lua数据文件和序列化
文章目录数据文件序列化保存不带循环的表保存带有循环的表 在处理数据文件时,写数据通常比读数据简单很多。当向一个文件中写时,我们拥有绝对的控制权;但是,当从一个文件中读时,我们并不知道会读什么东西。一个健壮的程序除了能够处理一个合法文件中所包含的所有类型的数据外,还应该能够优雅地处理错误的文件。因此,编写一个健壮的处理输入的程序总是比较困难的。 Lua语言自1993年发布以来,其主要...
2020-04-18 23:56:16
1141
原创 Lua数据结构
文章目录数组矩阵及多维数组链表队列及双端队列反向表集合与包字符串缓冲区图形 Lua语言中的表并不是一种数据结构,它们是其他数据结构的基础。我们可以用Lua语言中的表来实现其他语言提供的数据结构,如数组、记录、列表、队列、集合等。而且,用Lua语言中的表实现这些数据结构还很高效。 在像C和Pascal这样更加传统的语言中,通常使用数组和列表来实现大多数数据结构。虽然在Lua语言中也可...
2020-04-18 18:44:36
836
原创 Lua位和字节
文章目录位运算无符号整型数 Lua语言处理二进制数据的方式与处理文本的方式类似。Lua语言中的字符串可以包含热议字节,并且几乎所有能够处理字符串的库函数也能处理任意字节。我们甚至可以对二进制数据进行模式匹配。以此为基础,Lua5.3中引入了用于操作二进制数据的额外机制:除了整型数外,该版本还引入了位操作及用于打包/解包二进制数据的函数。位运算 Lua语言从5.3版本开始提供了针对...
2020-04-18 11:51:18
4938
原创 Lua日期和时间
文章目录函数os.time函数os.date Lua语言的标准库提供了两个用于操作日期和时间的函数,这两个函数在C语言标准库中也存在,提供的是同样的功能。虽然这两个函数看上去很简单,但依旧可以基于这些简单的功能完成很多复杂的工作。 Lua语言针对日期和时间使用两种表示方式。第1中表示方式是一个数字,这个数字通常是一个整型数。尽管并非IOS C所必需的,但在大多数系统中这个数字时自一...
2020-04-17 20:12:47
3572
原创 Lua写一个出现频率最高的单词程序
文章目录 在本章中,我们要开发一个读取并输出一段文本中出现频率最高的程序。像之前的小插曲一眼个,本章的程序也十分简单,但是也使用了诸如迭代器和匿名函数这样的高级特行。 该程序的主要数据结构是一个记录文本中出现的每一个单词及其出现次数之间关系的表。使用这个数据结构,该程序可以完成3个主要任务。读取文本并计算每一个单词的出现次数按照出现次数的降序对单词列表进行排序输出有序列表中...
2020-04-17 11:03:36
320
原创 Lua模式匹配
与其他几种脚本语言不通,Lua语言既没有使用POSIX正则表达式,也没有使用Perl正则表达式来进行模式匹配。之所以这样做的主要原因在于大小问题:一个典型的POSIX正则表达式实现需要超过4000行代码,这比所有Lua语言标准库总大小的一半还大。相比之下,Lua语言模式匹配的实现代码只有不到600行。尽管Lua语言的欧式匹配做不到完整POSIX实现的所有功能,但是Lua语言的模式匹配仍然非...
2020-04-15 14:15:06
2132
原创 Lua闭包详解
文章目录函数是第一类值 在Lua语言中,函数是严格遵循词法定界的第一类值。 “第一类值”以为这Lua语言中的函数与其他常见类型的值具有同等权限:一个程序可以将某个函数保存到变量中或表中,也可以将某个函数作为参数传递给其他函数,还可以将某个函数作为其他函数的返回值返回。 “词法定界”意味着Lua语言中的函数可以访问包含其自身的外部函数中的变量。 上述两个特行联合起来为...
2020-04-14 11:28:38
815
原创 break、return和goto
break、return 和 goto break和return语句用于从当前的循环结构中跳出,goto语句则允许跳转到函数中的几乎任何地方。 我们可以使用break语句结束循环,该语句会中断包含它的内层循环;该语句不能在循环外使用。break中断后,程序会紧接着被中断的循环继续执行。 return语句用于返回函数的执行结果或简单地结束函数的运行。所有函数的最后都有一个隐含...
2020-04-13 21:28:42
604
原创 Lua的控制结构
控制结构 Lua语言提供了一组精简且常用的控制结构,包括用于条件执行的if以及用户循环的while、repeat和for。所有的控制结构语法上都有一个显示的终结符:end用于终结if、for及while结构,until用于终结repeat结构。 控制结构的条件表达式的结果可以是任何值。Lua语言将所有不是false和nil的值当做真。if then else if 语句先...
2020-04-13 21:02:21
365
摸鱼时间工资计算器(微信小程序)
2026-02-10
cocos creator导出后的代码和我们自己写的源代码查找小工具
2025-09-12
基于STM32开发的数据手套控制机械臂
2024-07-08
cocos creator 3.7.2版本使用ts动态创建二维码
2024-06-26
元宵节代码,元宵节快乐代码,元宵节祝福代码
2023-02-04
用Python写的一个拼图游戏,自己好玩写的,写的不好,大家多多包涵
2022-12-29
用python写一个2048
2022-10-01
基于MATLAB的AM调制解调,MATLAB代码
2022-03-26
计算机视觉
2017-10-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅