- 博客(146)
- 资源 (3)
- 收藏
- 关注
原创 lua传参table给C++
lua代码传参local tb = {1,2,3,4,5}testfunLua(self, tb, #tb)C++接收if (!tolua_istable(L, 2, 0, &tolua_err)){ tolua_error(L, "invalid arguments in function 'lua_testfunLua'", nullptr); return 0;}int size = tolua_tonumber(L, 3, 0);vector<int> vc
2021-12-31 17:29:09 751
原创 使用bat脚本查找当前目录下指定时间之后修改的文件
@echo offtitle 查找当前目录下所有指定时间之后修改的文件echo ----------------------------------------------------echo step1: 请确输入时间,格式为yyyy/mm/dd HH:SSecho ----------------------------------------------------set /p targetTm=目标时间:rem echo “%targetTm%”for /r %%a in (*) do
2021-12-22 11:32:12 1596
原创 cpp文件操作及时间转换
char szFullPath[MAX_PATH];memset(szFullPath, 0, sizeof(szFullPath));GetCurrentDirectory(MAX_PATH,szFullPath); char szTempFileName[MAX_PATH];memset(szTempFileName, 0, sizeof(szTempFileName));strcpy(szTempFileName,szFullPath);strcat(szTempFileName,"\\t
2021-12-04 21:25:10 264
原创 MFC按照日期写日志文件
void CTestDlg::WriteTestCodeLog(string strLog){ char szFullPath[MAX_PATH]; memset(szFullPath, 0, sizeof(szFullPath)); GetCurrentDirectory(MAX_PATH,szFullPath); char szTempFileName[MAX_PATH]; memset(szTempFileName, 0, sizeof(szTempFileName)); strcpy
2021-12-04 21:14:55 1114
原创 MFC关闭指定进程
bool bFind = false;do { ULONG nProcessID = FindProcessID("testapp.exe"); if ( nProcessID > 0) { bFind = true; HANDLE hProcessHandle; hProcessHandle = ::OpenProcess( PROCESS_TERMINATE, FALSE,nProcessID ); TerminateProcess( hProcessHandle, 4
2021-11-23 21:03:50 788 1
原创 orcale中使用正则表达式
select t.*, t.rowid from TABLES t where regexp_like(t.key, '^mykey_*') //匹配mykey_开头的key
2021-09-23 21:37:48 147
原创 MFC判断任务栏点击
判断任务栏点击最小化,监听系统消息void ClientDlg::OnSysCommand(UINT nID, LPARAM lParam){ CDialog::OnSysCommand(nID, lParam); if (nID == SC_MINIMIZE) { m_bIsForeground = false; //点击任务栏图标最小化监听 }}
2021-09-02 17:05:30 334
原创 cocos2dx 动画Sequence
pImgCellBg:setVisible(false)pImgCellBg:setScale(0.8)pImgCellBg:runAction(cc.Sequence:create( cc.FadeOut:create(0.01), cc.DelayTime:create(0.1*i), cc.CallFunc:create(function ( ) pImgCellBg:setVisible(true) end), cc.EaseIn:create(cc.Spawn:create(c
2021-08-04 20:41:04 313
原创 Spine使用外部图片动画换肤
#include "GCSpine.h"#include "SkeletonBatch.h"#include "SkeletonTwoColorBatch.h"#include "extension.h"GCSpine::GCSpine() :SkeletonAnimation(){}GCSpine * GCSpine::create(const std::string& skeletonDataFile, const std::string& atlasFile){
2021-07-08 18:28:36 1309
原创 Error: could not open `C:\Program Files\Java\jre1.8.0_202\lib\amd64\jvm.cfg‘
安装两个版本的jdk导致设置环境变量失败结局方案:1、重新设置一遍环境变量2、删除C:\Windows\System32目录下的java.exe参考:https://www.cnblogs.com/alamps/p/8046479.html
2021-04-20 18:23:54 522
原创 保留小数位并舍弃无效零
CPP版本#include <iostream>#include <cstring>#include <sstream>using namespace std;int main(){ char szValue[128] = {0}; int iMoney = 200100; std::ostringstream oss; sprintf(szValue, "%.2f", (float)iMoney / 10000.f); istringstream
2021-03-17 20:46:31 438
原创 平行四边形ScrollView
问题需求:平行四边形的ScrollView解决办法:先旋转ScrollView一个角度iSlop调整内部显示的cell位置与旋转角度-iSloplocal iSlop = 5 -- 倾斜角度self.m_pScroll = ccui.ScrollView:create()self.m_pScroll:setRotation(iSlop)self.m_pContent = cc.Layer:create()self.m_pScroll:setInnerContainerSize(c
2021-01-15 11:34:17 147
原创 cocos2dx组件置灰
function changeToGray( node, flag ) local program = nil local vertShaderByteArray = "attribute vec4 a_position;" .."attribute vec2 a_texCoord;" .."attribute vec4 a_color;" .."varying vec4 v_fragmentColor;"
2020-12-17 10:03:04 413
原创 Redis设置过期时间expire没有生效
redis拿K ,如果v为空.直接设置过期时间expire.是不生效的.更不能在最下面设置过期时间,大并发时,照样不生效.所以得在设置值的时候同时设置过期时间
2020-11-04 20:59:18 8650 2
原创 lua字符串正则匹配
测试代码local str = "#普通文本:<#选中内容#><<#示例文本#>>" string.gsub(str, "[^".."<#|#>".."]+", function(w) --以"<#"或"#>"分割字符串 print("all--->"..w)end);string.gsub(str, "<#.*#>", function(w) --筛选被"<#"与"#>"包括起来的字符串
2020-09-24 10:01:36 2092
原创 秒及毫秒的随机数种子
引入头文件:#include "sys/timeb.h"随机数种子(毫秒):srandom(time(NULL));struct timeb timeSeed;ftime(&timeSeed);srand(timeSeed.time * 1000 + timeSeed.millitm); // milli time随机数种子(秒):unsigned int tseed = time(NULL);srand(tseed);使用随机数:int iRand = rand()%
2020-09-03 14:29:04 733 1
原创 关于cocos2dx使用spine动画第一帧错误显示
可以在setAnimation或者addchild之后手动调用一次update(0)刷新spine初始状态
2020-08-19 23:38:56 1008
原创 lua 5.1 位运算
--[[ 位运算 --与 同为1,则为1 --或 有一个为1,则为1 --非 true为 false,其余为true --异或 相同为0,不同为1]]local MathBit = {}function MathBit.__andBit(left,right) --与 return (left == 1 and right == 1) and 1 or 0endfunction MathBit.__orBit(left,
2020-06-11 00:32:53 1753 1
原创 cocos2dx spine动画反转
SkeletonAnimation *m_pSpine= SkeletonAnimation::createWithJsonFile("spinefile.json", "spinefile.atlas", 1.0F); //m_pSpineBrow->setSkin("skinname1"); //auto slot = spSkeleton_findSlot(m_pSpineBrow->getSkeleton(), "slotnamne1"); //auto slot1 = spSk.
2020-05-13 21:06:52 1486
原创 使用bat批量转换文件名
创建文本文件,复制下面代码,另存为ANSI格式,改.txt为.bat,双击@echo offset /p w=请输入文件格式(即扩展名并以回车结束):set /p wf=请输入要修改的文字(以回车结束):set /p cb=请输入要改成的文字(若是删除则直接回车,以回车结束):for /f "delims=" %%i in ('dir /b /a-d "*.%w%"' ) do ( set str1=%%i setlocal EnableDelayedExpansionset "str1=!
2020-05-11 20:53:41 1017
原创 cocos2dx中std::function使用
std::function在cocos2dx中可以用于界面信息交互当前有界面ALayer,其中有ASprite以及BLayer为ALayer的ChildBLayer中有控件BButton,当BButton触发时通知ALayer的ASprite切换图片ALayer.cpp//首先ALyer内,添加BLayer和ASpritebool ALyer::init(){ if ( !Sc...
2020-03-15 18:36:47 296
原创 cocos2dx坐标转化及节点位置获取
Sprite *pTest1 = Sprite::create("CloseNormal.png"); pTest1->setPosition(ccp(100.0f, 120.0f)); Sprite *pTest2 = Sprite::create("CloseNormal.png"); pTest2->setPosition(ccp(10.0f, 12.0f)); ...
2020-03-11 22:46:39 2601
原创 The application's Info.plist does not contain CFBundleShortVersionString.
在info.plist内添加CFBundleShortVersion 即可如下图所示
2020-03-08 15:30:04 5530
原创 C++实现atoi
class Solution {public: int myAtoi(string str) { int i = 0; int sign = 1; long ret = 0; while(str[i]==' ' && str.size()>i) { i++; ...
2020-01-31 21:14:36 557
原创 Android SQLlite使用
首先创建一个类继承自SQLiteOpenHelperpackage xxx.xxx.xxx;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import andr...
2020-01-22 13:48:21 398
原创 Failed to load D:\adt-bundle\sdk\build-tools\28.0.3\lib\dx.jar
project.properties中指定本地工程使用的工具版本target=android-19android.library.reference.1=G:/demo/huawei/GameSDK_LibProject_Eclipsesdk.buildtools=23.0.1
2020-01-16 11:15:00 453
原创 android8.0自动安装apk失败问题
在android7.0之前String str = "/myApk/game.apk";String fileName = Environment.getExternalStorageDirectory() + str;File file18 = new File(fileName);Intent intent = new Intent(Intent.ACTION_VIEW);fileU...
2020-01-14 17:25:23 494
原创 lua5.1十进制算术运算与或非
local function BitOR(a,b)--Bitwise or local p,c=1,0 while a+b>0 do local ra,rb=a%2,b%2 if ra+rb>0 then c=c+p end a,b,p=(a-ra)/2,(b-rb)/2,p*2 end return c...
2020-01-13 10:52:04 824
原创 cocos2dx保存截图至相册并分享(android 微信)
在进行以下操作之前先接入SDKhttps://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/Android.html首先是在游戏内进行截图CCSize size = CCDirector::sharedDirector()->getWinSize();CCRenderTexture *screen =...
2019-12-10 16:47:02 648
原创 metatable与metamethod
元表metatablemetatable允许我们改变table的行为,每个行为关联了对应的元方法。setmetatable(table,metatable):对指定table 设置元表(metatable),如果元表中含有键__metatable , setmetatable则会失败。记得 返回值是tablegetmetatable(table):返回对象的元表(metatable)。...
2019-12-09 15:17:25 159
原创 layabox打包单机apk:网络异常,请检查您的网络或与开发商联系...
工程发布之后才能构建构建时资源路径填发布之后relese下的web目录(发布之后与index.html所在目录),单机要勾选单机版框打包过程中一定要注意版本对应关系,否则会出现下面这种情况版本:在发布之后的release\web\libs\laya.core.js中找到Laya.version=“x.x.x”;构建时选择对应的Native版本...
2019-12-04 18:46:18 1419
原创 table.sort()
在table排序sort()中不能有nil,目标table的必须是从1到n连续的重写的比较函数,两个值相等时不能return truetable.sort(tmpQueue, function(a, b) if (a == nil or b == nil) then return (a.endTime < b.endTime) --此处千万不能用小于等于 end)随机排...
2019-11-25 10:19:09 7881
原创 关于lua字符串操作中的匹配模式
匹配模式Lua 中的匹配模式直接用常规的字符串来描述。 它用于模式匹配函数string.find (str, substr, [init, [end]])在一个指定的目标字符串中搜索指定的内容(第三个参数为索引),返回其具体位置。不存在则返回 nil。string.gmatch(str, pattern)返回一个迭代器函数,每一次调用这个函数,返回一个在字符串 str找到的下一个符合...
2019-11-15 10:42:34 1011
转载 eclipse中JNI与NDK
JNI简介:Java Native Interface,即java本地接口,本地接口就是指用C和C++开发的接口。实际使用中,java需要与本地代码进行交互,因为java具备跨平台的特点,所以java与本地代码交互能力非常弱,所以采用JNI特性增强java与本地代码交互的能力。使得java与本地其他类型语言(如c、c++)交互,即在java代码里调用c、c++等语言的代码或c、c++代码...
2019-11-13 17:54:26 179
转载 cocos2dx内存管理与多线程
为什么使用线程:cocos2d-x引擎在内部实现了一个庞大的主循环,每帧之间更新界面,如果耗时的操作放到了主线程中,游戏的界面就会卡,这是不能容忍的,游戏最基本的条件就是流畅性,这就是为什么游戏开发选择C++的原因。另外现在双核手机和四核手机越来越普遍了,是时候使用多线程来挖掘硬件的潜力了。线程环境配置cocos2d-x中的多线程使用pthread就可以实现跨平台,而且也不是很难理解。使用p...
2019-11-08 14:15:59 172
原创 cocos2dx多线程通信
在cocos2dx中要实现网络实时交互,需要使用socket保持连接,并与服务器进行数据交互socket通信部分需要使用多线程1、开启一个线程,进行socket通信的连接int ClientSocket::Start(){ int errcode = 0; do { pthread_attr_t l_attr; errcode = pthread_attr_init(&...
2019-11-05 15:48:10 451
原创 无重复字符最长子串(C++)
题目:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "w...
2019-11-01 15:07:34 2013
原创 Android6.0权限批量申请
1、 主要接口检查权限是否被允许ContextCompat.checkSelfPermission(welcomeActivity.this, permissions[i])请求权限ActivityCompat.requestPermissions(this, permissions, MY_PERMISSIONS_REQUEST_CODE);请求之后的回调onRequestPermi...
2019-10-28 15:21:37 376
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人