- 博客(46)
- 资源 (5)
- 收藏
- 关注
原创 Lua面向对象 实现 超详细注释 实现构造函数,析构函数,只读类模板等功能
【代码】Lua面向对象 实现 超详细注释 实现构造函数,析构函数,只读类模板等功能。
2024-12-07 00:11:21
394
原创 数据结构C++(单链表)
#include<bits/stdc++.h>using namespace std;class ListNode{ public : ListNode * next; int val; ListNode(int _val = 0) { next = NULL; val = _val; }};class List{ int length; ListNode * p; ListNode * q; public: ListNode* hea
2022-05-18 11:58:57
427
原创 topk的两种算法C++实现(堆,快速查找)
#include<bits/stdc++.h>using namespace std;int topk(vector<int> arr,int k)//堆方式 { if(k>arr.size()||k<=0) { return -1; } priority_queue<int,vector<int>,greater<int> > qp; for(int i=0;i<arr.size();i++) { i
2022-05-07 12:45:12
727
原创 GameFramework实战二(UI的创建与打开)
下载新的工程为了更加方便的使用gameframework的相关功能,我们先去下载新的工程注意我们下载的时候不要用zip下载,用clone的方式。假设我们已经下载完毕我们的目录结构是这样的:我们可以点击自带的场景先玩一玩,这个项目就是金典的飞机游戏,我们实战的最后的目标就是复现这个新建我们的目录我们新建一个文件夹(NewGameMain),创建一个新的场景(NewStarForce)目录如图所示:这一章我们只会用到ui的相关知识我们在NewGameMain中创建两个文件夹我们打开N
2022-02-10 15:14:10
2045
3
原创 GameFramework实战一(流程的创建)
GameFramework的导入看了之前的之前的文章,我默认大家都已经调试好了,如果没有的话,我推荐GF作者的工程源码第一个流程的创建在工程导入之后,我们的初始目录是这样的在GameMain文件夹中中是GF作者写的代码(我们先不要删除),我们可以先不看他们我们在Scripts下创建一个文件夹叫做Procedure,在向其中添加一个叫做ProcedureStart.cs的文件创建完毕之后应该是这样的:我们打开文件进行编辑using GameFramework;using GameFrame
2022-01-17 22:28:43
3996
2
原创 GameFramework框架——FSM和Procedure的底层调用梳理
GameFramework框架——FSM和Procedure的底层调用
2022-01-12 23:12:22
868
原创 Unity开发笔记:退出程序
众所周知:Unity分为两个模式,编辑器模式和应用程序模式在两种模式下程序的关闭方法不一样的代码: #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif...
2022-01-01 14:39:00
4625
原创 JavaEE复习资料
JavaEE概述(组件-容器编程思想)两层体系结构(C/S)和三层体系结构(B/S)C/S分为客户端和数据库服务器。缺点:安全性低,部署困难,耗费系统资源B/S分为客户端,WEB应用服务器,数据库服务器优点:安全性高,易维护,快速响应,系统扩展灵活什么是JavaEE?标准中间件体系结构企业分布式应用开发标准Servlet(Web组件)概述独立于操作系统平台和网络传输协议的服务端Java应用程序,可生成动态web页面。与传统Java应用程序的区别由包含Ja
2021-12-26 18:30:14
484
原创 RSA和SHA512实现数字签名(C++)
#include<bits/stdc++.h>// 循环右移(64位)#define ROR64( value, bits ) (((value) >> (bits)) | ((value) << (64 - (bits))))//////////////////////////////////////////////////////// //// Ch,:
2021-11-24 17:46:10
2941
2
原创 RSA算法的简单实现(C++)
#include<bits/stdc++.h>using namespace std;int p,q,n,e,d;//{e,n}作为公钥 {d,n}作为私钥 int fn;int m,c,new_m;int max_pq,min_pq;bool isPrime(int n)//判断是否是素数 ,小素数可以 ,大一点的使用素性判断算法 { if(n%2==0) { return false; } for(int i=3;i<=sqrt(n);i+=2) {
2021-11-17 19:14:39
1833
原创 蓝桥杯第十二届C++B组省赛题解
试题 A 空间试题 B 卡片试题 C 直线试题 D 货物摆放试题 E: 路径试题 F: 时间显示试题 G: 砝码称重试题 H: 杨辉三角形试题 I: 双向排序试题 J: 括号序列试题A 空间分析:这题考查的是内存相关的知识;我们先来看一下进制1MB=1024KB1KB=1024B1B=8b=8位由题意知:256MB=256×1024KB=256×1024×1024B=256×1024×1024×8b=256×1024×1024×8位一个元素=32位可以储存(个)=256
2021-11-13 17:23:07
4340
4
原创 C++ 智能指针share_ptr 和weak_ptr的实现
class Count{public:Count()????(0),w(0){}int s;//share指针计数int w;//weak指针计数};templateclass Weak_ptr;//先引用templateclass Share_ptr{T * ptr;//管理的指针Count * cnt;//计数public:Share_ptr(T * p = 0):ptr§//构造函数{ptr = p;cnt = new Count();}Share_ptr(Sh
2021-11-07 13:46:14
250
原创 C++三大特性之封装
一.什么是封装封装:隐藏对象的属性和实现细节,仅对外公开接口和对象进行交互,将数据和操作数据的方法进行有机结合。二.封装的形式函数:函数是封装的一种形式:函数所执行的细节行为被封装在函数本身这个更大的实体中,被封装的元素隐藏了它们的实现细节–可以调用一个函数但是不能够访问函数所执行的语句。访问限定符:public,protected,private.访问控制符本质是编译时期的指令不会保存在内存。用于告诉编译器成员变量和成员函数的可访问性。在C语言中,我们通过函数进行实现细节的封装。C++中我们通过
2021-11-06 17:04:52
615
原创 C/C++使用宏定义实现sizeof
#define _sizeof_type(T) (size_t)((T*)0 + 1) //适用于类型#define _sizeof(T) ((size_t)(&T + 1) - (size_t)(&T)) //适用于变量#define _mysizeof(T) (size_t)((typeof(T)*)0 + 1) //适用于C语言,变量和类型都可以
2021-11-05 18:24:32
1178
原创 C++宏与内联函数
在C语言中我们可能使用宏去定义函数但是在C++中我们常常使用内联,const,enum去代替宏,一.宏每个宏 我们需要已#define 进行开头使用的方式是#define 待替换字符串 替换字符串中间 用空格隔开我们可以用待替换字符串表示替换字符串,在预编译阶段,编译器会为我们替换。下面我们来看看代码#include<stdio.h>#define a Aint main(){ int a=0; printf("%d",a); printf("%d",A);}
2021-11-05 18:15:21
698
原创 C++ static详解
一.static的使用范围1.static可以用来修饰对象(包括基本类型,用户自定义类型。普通对象,指针对象,引用对象)2.static可以用来修饰函数二.static修饰对象2.1 static修饰不同地方定义的对象2.1.1 静态全局变量static int a = 1;//静态全局变量int static b = 1;//静态全局变量int c = 1;//全局变量const int d = 1;//常量const static int e = 1;//常量static cons
2021-11-05 17:40:19
1450
原创 C++ const详解
一.const出现的意义被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性.这是我们最常看到的一句话。但是我们常常将const和其他技术相结合使得程序更加优秀。二.const修饰符的使用场景1.修饰变量1.1 其中修饰变量也有很多种情况,我们先来分析内存的不同情况代码:#include<iostream>using namespace std;int i=0;static int j = 0;int k;const int a=1;const s
2021-11-05 14:00:30
397
原创 C++ struct
C++struct与C中struct的不同1.C++和C的struct命名小有不同struct data{ int a; int b;};同样的结构体,C++可以直接使用data声明类型,而C必须使用struct data(不使用typedef)2.C++的struct可以定义函数,C不行3.C++struct可以包含一些C++独有的类的特性(访问控制符号,成员函数,继承)C++struct与class的不同class 时,类中的成员默认都是 private 属性的;而使用 stru
2021-11-04 22:18:34
440
原创 C++ 四种cast 详解
一.cast出现的意义1.C++继承并扩展C语言的传统类型转换方式,提供了功能更加强大的转型机制(检查与风险)2.更好的定位转型的地方(ctrl+F cast)二.reinterpret_castreinterpret_cast是四种强制转换中功能最为强大的(最暴力,最底层,最不安全)。它的本质是编译器的指令。它的作用:它可以把一个指针转换成一个整数,也可以把一个整数转换成一个指针。或者不同类型的指针的相互替换代码示例:#include <iostream> int main()
2021-11-04 20:56:09
15061
原创 C++内存对齐 详解
一.常见的类型长度#include <iostream> int main(){ int a=1; char b='b'; double c = 2; int d[]={1,2,3,4}; printf("%d\n",sizeof(a)); printf("%d\n",sizeof(b)); printf("%d\n",sizeof(c)); printf("%d\n",sizeof(d));}执行结果:分析:根据结果,我们知道,int占4个字节,char 占1个
2021-11-04 16:21:04
732
原创 C++内存模型 详解
一.C/C++内存模型基本概念1.两大分区:代码区和数据区2.四大分区:代码区,全局区(全局/静态存储区),栈区,堆区3.C语言分区:堆,栈,静态全局变量区,常量区4.C++语言分区:堆、栈、自由存储区、全局/静态存储区、常量存储区(标准答案)5.C/C++内存模型根据生命周期的不同有三大区:即自由存储区(C++),动态区、静态区6.代码虽然占内存,但不属于c/c++内存模型的一部分二.各分区实际内存结构text段: 用于存放程序代码的区域, 编译时确定, 只读。更进一步讲是存放处理器的机器
2021-11-04 13:34:53
4059
2
原创 Lua实现字符串相关算法(1)(最长回文子串,Manacher算法,中心扩展算法,动态规划算法)
题目给你一个字符串 s,找到 s 中最长的回文子串。示例1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例2:输入:s = “cbbd”输出:“bb”题目分析回文串:通俗的讲就是正着读反着读都一样的字符串子串:不同于子序列,子串是字符串连续的子集,子序列是子集最长:满足前两个要求的最长回文子串解法一:暴力算法设字符串S,子串S[i…j],暴力枚举S[i…j]的所有组合并判断是否为回文串。时间复杂度分析:首先暴力枚举i,j时间复杂度为O(
2021-07-23 16:53:24
432
原创 xLua与Unity实现热更新(一)
首先下载xLuahttps://github.com/Tencent/xLua其中Assets中的文件放在项目的Assets下1其他的文件放在同级目录下不更新的物体运动逻辑1.先创建一个Sphere2.创建Sphere移动脚本 SphereMove.cs 并挂载到Sphere上using UnityEngine;public class SphereMove : MonoBehaviour{ // Update is called once per frame
2021-07-22 19:42:49
637
1
原创 Lua实现类class(搬运)
function class(...) -- 返回的表类似“类”的定义 local cls = {} -- 数据都存储在这里面,用作数据存储空间 local data = {} -- 复制传入...的的成员。传入的...类似类定义中的成员列表。需要将父类,以及...内的成员都复制过来 local function copyField(src, dest) -- 先复制父类 if src['__super'] then
2021-07-21 16:27:34
583
原创 Lua语言实现7种排序(冒泡排序,插入排序,选择排序,快速排序,归并排序,堆排序)
冒泡排序function BubbleSort(arr) local len = #arr; for i = 1,len do for j = 1,len-i do if (a[j] < a[j+1]) then a[j],a[j+1] = a[j+1],a[j]; end end endend插入排序function InsertSort(arr) local len = #arr for i = 2,len do local temp = arr
2021-07-20 18:11:13
2726
原创 C++冒泡排序,插入排序,选择排序,快速排序,归并排序,希尔排序,附带工具函数和注释
冒泡排序void BubbleSort(vector<int> &arr)//冒泡排序 { int length=arr.size(); for(int i=0;i<length-1;i++) { for(int j=i+1;j<length;j++) { if(arr[i]>arr[j])//arr[i]<arr[j] 降序 { swap(arr[i],arr[j]); } } } show(arr);}
2021-02-01 21:02:19
444
原创 解决GO语言package golang.org/x/text/unicode/norm: unrecognized import path “golang.org/x/text/unicode/no
输入go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.cn,direct之后再继续就行
2021-01-12 10:49:10
893
原创 WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after conne
解决办法:pip install keras -i http://pypi.douban.com/simple --trusted-host pypi.douban.com(其中的keras是你需要下载的,根据自己需求自行更改)
2020-12-08 18:02:39
318
原创 二叉树的创建,先中后序遍历,层序遍历,输出度数为0,1,2的节点,输出深度
#include<iostream>#include<queue>using namespace std;typedef struct Tree{ char data; struct Tree * left; struct Tree * right;}TT,*TB;void pre_create_tree(TB & tree){ char a; cin>>a; tree = new struct Tree; if(a!='#') {
2020-12-07 16:18:59
300
1
原创 图的创建,深度,广度优先遍历
#include<iostream>#include<vector>#include<cstdlib>using namespace std;#define MAX 5static bool visited[MAX]={false,false,false,false,false};typedef struct node{ int node_data; struct node * next;}*Node; typedef struct{ int d
2020-12-07 16:17:21
109
原创 阿里云ceston7.2的Nginx+uwsgi+Django的配置
一.新建Django项目1输入django-admin startproject 你的项目名称2输入python startapp 你的app名称(我的项目名称是zmd,app名称是ourzmd)结构大概如下图:这样我们就成功的创建了Django项目,Django项目可以直接移植到Linux上面(有环境)二.uwsgi的安装与配置//安装编译工具yum install -y gcc* pcre-devel openssl-devel//安装python依赖,看你的python是什么版本的
2020-11-15 16:36:28
216
原创 QT error: invalid use of incomplete type ‘class Ui::XXXXXX‘
1.这个问题非常好解决只需要把打开对应的UI文件,点击空白处修改成XXXXXX就行比如我的报错是这样的C:\Users\86155\Desktop\Audit01\userdetail.cpp:6: error: invalid use of incomplete type ‘class Ui::UserDetail’ui(new Ui::UserDetail)^~~~~~~~~~这样就成功了!!...
2020-11-13 17:22:05
8070
4
原创 QT高版本没有数据库驱动的问题
在QT的高版本没有数据库驱动,使用数据库模块会导致报错这个时候我们只需要在对应套件里面加上两个文件libmysql.dlllibmysqld.dll就可以了文件我放在下面的链接了
2020-11-12 15:34:25
251
原创 Linux守护进程(Shell编写,附带挂载教程)
Shell脚本内容windows下编写:新建一个文本文件,编辑代码如下:#!/bin/bash#守护进程,每隔5秒守护一次while truedo res=`ps -ef | grep 8000 | grep -v grep | wc -l` #查询8000端口下的运行进程的数目,也可以把8000改成想要守护的进程名 if [ $res -eq 0 ] #如果进程数为0 -eq跟==差不多 then #就执行下面一句话 nohup python3.6 manage.py run
2020-10-29 10:49:17
3469
原创 unity3d学习笔记(一)方向键移动物体
创建移动物体一开始我们新建了项目之后,在空白处右击找到Cube为了方便我们在下面的project栏创建一个文件夹(GameScript)之后我们开始创建移动脚本,同样的在project栏右击找到C# Script,创建后命名为Cubemove开始编写代码移动脚本第一种using System.Collections;using System.Collections.Generic;using UnityEngine;public class Cubemove : MonoBehav
2020-10-19 18:06:21
4469
qt数据库依赖dll,解决无数据库驱动的问题,解决打包后无法运行的问题
2020-11-12
聊天室v1.6e.rar(免费)
2020-02-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人