- 博客(48)
- 资源 (4)
- 问答 (2)
- 收藏
- 关注
原创 static_cast, dynamic_cast, const_cast, reinterpret_cast 区别
static_cast 相当于传统的C语言里的强制转换,用于非多态的转换,可以转换指针及其其他,但是没有运行时类型检查来保证转换的安全性。用法:用于基本数据类型之间的转换, int 转 char, char* 转void*等基类和派生类之间的指针或引用转换不能转换含有const、volatile属性的变量把派生类的指针或引用转换成基类表示是安全的示例:OnEventData(vo...
2019-07-24 20:51:48
963
转载 C++ 智能指针auto_ptr、unique_ptr、shared_ptr、weak_ptr
转自: https://www.nowcoder.com/tutorial/93/a34ed23d58b84da3a707c70371f59c21 智能指针的作用是管理一个指针,因为存在以下这种情况:申请的空间在函数结束时忘记释放,造成内存泄漏。使用智能指针可以很大程度上的避免这个问题,因为智能指针就是一个类,当超出了类的作用域是,类会自动调用析构函数,析构函数会自动释放资源。所以智能指针的...
2019-07-22 20:29:26
481
原创 Centos6.5机器安装docker环境
进入超级权限 : sudo su, 以下所有操作均在超级权限中执行安装docker环境:yum install -y docker-io #安装docker1.7.1service docker restart #重新启动dockerdocker -v #查看docker版本,检查命令是否有效安装docker compose检查python 版本 py...
2018-07-13 11:27:24
1152
原创 docker线上部署
背景 每次部署环境的时候,尤其是环境中有各种依赖,小心翼翼地做着重复的工作,会让人觉得很不爽。docker容器技术就可以将人从这些复杂重复的工作中拯救出来。这里分享一个用docker构建线上环境的实例。相关名词 Docker 镜像:镜像,就是把程序...
2018-07-12 12:25:10
2233
原创 多人游戏对战技术(坦克大战、状态同步)
用状态同步的方式实现一个坦克大战的小游戏,这也是一次全新的尝试,从游戏的效果来看,在正常的网络速度下效果符合预期。这里跟大家分享下游戏客户端中用到的关键技术点。一、 同步方式的选择,状态同步or 帧同步? 状态同步: 同步的是游戏中的各种状态,游戏逻辑由服务器实现,只是将计算后的结果同步给客户端,客户端根据收到的状态,同步本地的游戏状态。 实现状态同步的一般...
2018-06-29 17:18:23
6269
3
原创 ICE 中文教程下載地址
我不是尊重別人的勞動果實,而是覺得這些東西應該免費分享出來,所以我用10分下載了一份,放在百度網槃上供大家下載。https://pan.baidu.com/s/1eTOKoMY提取碼 j6x8
2018-01-22 13:59:36
1713
6
原创 Centos 制作本地yum源
在制作程序安装包的时候很多时候我们可能面对一个问题,怎样在没有网络环境的主机上使用yum安装依赖包。这里以32位依赖库glibc.i686为例来探讨一下,怎样制作一个本地的yum 源,来实现不依赖网络使用yum来安装glibc.i686。Step1. 收集rpm安装包 要制作本地源,那么首先得需要rpm包,我们知道安装一个glibc.i686可能需要很多其他的依赖的rpm包,如果依赖包
2017-01-08 19:51:49
8048
原创 Linux下获取当前程序的绝对路径
#include <unistd.h>#include <string>#include <iostream>using namespace std;char *getOwnerPath(){ char path[1024]; int cnt = readlink("/proc/self/exe",path,1024); if(cnt<0||cnt>=1024)
2016-06-30 15:42:46
3107
原创 #debug日志#解决opencv Error: Insufficient memory 问题
2016年6月30日bug 引起原因: 在函数中初始化过多的Mat并且没有手动释放,这导致程序在运行时内存不足。 例如: Mat A(占内存) Mat B(占内存) Mat C(占内存) 对A B C 操作 这样写就有可能导致内存不足并且引发如标题所示的错误解决方案: 在函数中手动释放Mat所占用的内存。 在函
2016-06-30 10:22:09
4257
1
原创 Opencv 中的函数不起作用
在做项目的时候,用opencv中的函数不起作用,网上一个版本说是在debug下添加了不含有d的lib,然后我没有错,后来通过更还了一个版本就解决了。opencv中的函数不起作用,也有可能是两个项目使用的opencv版本不一样。
2016-06-02 15:47:48
843
原创 Centos6.5 安装 jsoncpp
1.安装环境: python (自带) scons (用来编译jsoncpp) jsoncpp 2.从github下载最新版本jsoncpp https://github.com/open-source-parsers/jsoncpp3.安装scons scons 官方网址 http://www.scons.org/ 找到Redhat版的rpm(比如scons-2
2016-05-04 19:44:01
3099
原创 void 类型指针以及指针数组
void 类型比较特殊,它可以表示所有的类型,但是又不能像其他类型那样声明成实体。在很多项目中的函数的参数使用void* 型数组,在void*数组中,即可以有int型,可以有char型,也可以有结构体,将这些参数放在一个void* 型数组中。 值得注意的是,不能直接使用void型变量,而是使用void*,即void 型的指针。 比如:int a;void b;void* c;这里第一行声
2016-05-03 18:02:15
14517
1
转载 CentOS 编译安装git,解决github HTTPS 403错误
转自: http://www.xuebuyuan.com/2126655.html **CentOS 编译安装git,解决github HTTPS 403错误**CentOS 支持yum安装git:yum install git但克隆github仓库时:git clone https://github.com/ironman/ironman.git提示错误:error: The request
2016-04-19 11:21:39
1021
原创 用队列写贪吃蛇(C语言版)
By Tomas 2016.3.2 编程语言: C 程序介绍: 利用队列这个数据结构编写一个简单的贪吃蛇小游戏。原理分析: 队列的特点就是先进先出(FIFO),我们就是利用他的这个特点来模拟一条贪吃蛇。我们首先考虑一下这个游戏需要哪些元素,然后怎么用终端模拟这些元素。蛇:蛇在终端上的表示就是很多个字符连在一起就是蛇,比如: @@@@ 或者 2222222 都是一条蛇。然而,队列是有队头和队尾之分
2016-03-03 00:35:12
4449
4
原创 数组循环移位的几种解法
题目描述: 设计一个算法,把一个含有N个元素的数组循环右移K位。解法一: 最容易想到的就是每次将数组中的元素右移一位,循环K次。#include<iostream>using namespace std;void RightShift(int *arr, int N, int K){ while(K--){ int t =
2015-08-23 23:02:40
22052
4
转载 linux 多线程一篇挺好的文章(包括参数处理)
http://www.cnblogs.com/blankqdb/articles/2651029.html Linux多线程编程并传递多个参数实例例子详细解析: 一. pthread_create()与pthread_join()函数1 #include 《pthread.h》 2 int pthread_join(pthread_t thread, 3
2015-07-04 12:01:32
431
转载 高效产生不重复的数
form: http://www.cppblog.com/sleepwom/archive/2010/01/13/105570.html 如何产生不重复的随机数?最容易想到的方法,是逐个产生这些随机数,每产生一个,都跟前面的随机 数比较,如果重复,就重新产生。这是个很笨的方法,且比较次数呈线性增长,越往后次数越多。其实这些比较是多余的,完全可以不进行比较,只要反过来,按顺序产生这些数,但随机产
2015-06-25 10:14:15
608
原创 UML学习概念
1.对象vs 类 对象是类的一个实体 2.分析vs设计 分析强调问题的调查与研究,而设计强调解决方案。 3.面向对象分析vs设计 面向对象分析: 强调在问题中描述对象或者概念。 比如在一个空运系统中,包括飞机,飞行员,航班等概念。 面向对象设计:强调在软件中定义对象并且描述它们是怎样合作来满足需求的。 比如在飞机这个对象中,一定会有一个属性叫做航
2015-06-15 21:56:34
568
原创 UML学习之类图
参考链接:http://www.uml.org.cn/oobject/201211231.asp 深入浅出UMLhttp://www.open-open.com/lib/view/open1328059700311.html UML类图几种关系的总结 一.类 类的定义: 类是一些数据的以及对这些数据进行操作的方法的封装,它是具有相同属
2015-06-10 17:24:23
972
转载 Cocos2d-x3.2 Sprite精灵类的创建与设置
转自:http://my.oschina.net/Jacedy/blog/301242//GameScene.h#include "cocos2d.h" class GameScene : public cocos2d::Layer{public: static cocos2d::Scene* c
2015-04-07 23:21:54
790
原创 bresenham直线,画圆算法(附OpenGL代码)
我们在电脑上看到的图像时由一个个像素点拼接而成,当你放大图像就可以观察到这点。以下是一条直线: 它是由这些像素点一个一个拼接而成,那么问题来了,怎样选取这些点,使我们看到的更像是一条直线呢?我们的主要思路就是,谁靠近直线我们就选谁,近水楼台先得月。如下图,因为,所以我们选择直线下面的黄点作为画直线的点。依照这个原则,直到终点。这样一条线就出来了。所以我们得比较这两个值的大小。我们只
2015-03-31 16:40:52
23131
原创 浅析OpenGL
浅析 OpenGL 一.OpenGL 基本介绍 (参考维基百科) OpenGL 是Open Graphics Library的缩写,中文名叫开放图形库。它是定义了一个跨编程语言,跨平台的应用程序接口的规范。用于生成二维和三维图像。它是
2015-03-12 23:24:25
1034
原创 ID3算法简单实例(代码)
参考链接: http://blog.youkuaiyun.com/yangliuy/article/details/7322015 问题描述:这里有17个属性,背景是美国选举,然后我们需要做的就是根据除了Class Name的16个属性判断这个人是哪个党派。std::string temp[17] = { "Class Name", "handicapped-infants", "wa
2014-12-22 09:37:01
4243
转载 win 8下80端口被占用,启动不了wampserver
1、终端输入,打开注册表:regedit2、找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP3、在右边找到Start这一项,将其改为04、重启系统,System进程不会占用80端口 重启之后,再启动Apache就可以了。
2014-11-27 17:16:36
884
转载 socket套接字错误代码详解
本文描述了可能错误代码, 是由 WSAGetLastError (Wsapiref_2tiq.asp) 函数返回。按字母顺序列出错误由错误宏。 从任何函数不返回 Winsock2.h 中定义一些错误代码。 本文中不包含这些错误代码。做网络编程被报错而真心蛋疼的孩子们有救了。更多信息WSAEINTR (10004) * 转换 : 中断函数调用。* 说明 : 阻塞操作中
2014-11-03 10:44:18
7152
原创 基于opencv的人脸检测程序
#include #include #include "opencv2/objdetect/objdetect.hpp"#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"#include #include using namespace std;using namespace c
2014-10-20 12:16:29
763
转载 Android Resource介绍和使用
1. 相关文件夹介绍 在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的。assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译,可以存放一些图片,html,js, css等文件。在后面会介绍如何读取assets文件夹的资源! res文件夹里面的多个文件夹的各自介绍(来自网上的Android开发指南中文版
2014-08-24 02:50:14
523
转载 OSI开放式系统互联参考模型
OSI(Open System Interconnection),开放式系统互联参考模型 ,它把网络协议从逻辑上分为了7层。每一层都有相关、相对应的物理设备,比如常规的路由器是三层交换设备,常规的交换机是二层交换设备。
2014-08-17 08:53:15
2655
1
转载 八数码问题A*算法
在此只介绍八数码问题A*算法的主要思想及思路:1、什么是八数码问题A*算法?简单来说八数码问题A*算法就是会将队列中的结点按“估价值”由小至大按序并让“估价值”小的结点优先出队的广度优先搜索算法。2、下面看该算法相关介绍:(1)、启发式搜索广度优先搜索和双向广度优先搜索都属于盲目搜索,这在状态空间不大的情况下是很合适的算法,可是当状态空间十分庞大时,它们的效率实在太低,往往都是
2014-08-14 10:37:58
7747
请问信号与系统这门课程对学软件的同学有多重要?
2013-12-30
easyBCD误删单系统,现在开机进不去,蓝屏,求解
2013-10-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人