- 博客(116)
- 资源 (10)
- 问答 (1)
- 收藏
- 关注
原创 golang Slice切片
切片是struct结构,又称为动态数组,type slice struct { arrary unsafe.Pointer len int cap int }两个关注点切片长度 切片容量怎么使用:创建slice// 1. 生成一个空切片,并且初始元素个数为n,默认值为对应类型的空值,比如int为0。c为容量 s := make([]int, 10, 20) // 2. 空切片 nil,不分配内存 var s [] int // 3. 通过数组创建 var t = s[5:9]
2021-08-29 12:24:00 488
原创 golang 配置私有仓库
配置使用ssh 访问的仓库1. go mod 根据go.mod拉取依赖库时,会使用https的方式。为了方便我们也可以通过配置git 全局配置来使用 ssh的方式拉取依赖,下面是配置 https转换为ssh的方式:git config --global url."[email protected]:".insteadOf "https://gitee.com/"2. 配置环境变量,来指定私有仓库,用于不走代理的方式go env -w GOPRIVATE=gitee.com这里配置私有仓库是g.
2021-03-03 23:32:01 2159 1
转载 ubuntu12.04 安装最新的docker
安装Docker(在Ubuntu中)Docker支持下面的这些Ubuntu操作系统:Ubuntu Xenial 16.04 (LTS)Ubuntu Wily 15.10Ubuntu Trusty 14.04 (LTS)Ubuntu Precise 12.04 (LTS)该页指导你使用Docker管理发行包和安装机制来安装Docker。使用这些包能够确保你获得最新的Docker发行版。...
2019-09-15 10:41:18 1136
转载 非18.04安装g++7.4
步骤sudo add-apt-repository ppa:ubuntu-toolchain-r/testsudo apt-get update sudo apt-get install gcc-7sudo apt-get install g++-71 2 3 4以上指令可以正确安装,下面是配置指令,将gcc7 和 g++7 作为默认选项:sudo update-a...
2019-06-30 11:54:52 792
原创 VitrualBox增强功能安装失败解决办法
sudo apt-get install virtualbox-guest-dkmsmkdir -p /media/cdrommount /dev/sr0 /media/cdromcd /media/cdrom./autorun.sh原文链接:https://segmentfault.com/q/1010000009038454
2019-06-27 11:31:31 3820
原创 openssl 安装
安装环境: ubuntu10.04-desktop 32位 | gcc (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3 | cmake version 2.8.12.1源码编译openssl wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1.tar.gz tar zxvf...
2019-06-22 16:04:34 2083
原创 堆栈被破坏的几种情况
简要说明:程序的栈内存空间是向下增长的,堆内存向上增长。局部变量赋值越界例如: 局部字符串数组拷贝字符串,当拷贝的字符串大大的超过变量空间就会破坏堆栈char buff[4] = {0, }; strcpy(buff, "Hello,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,");指向局部变量的指针越界修改数据例如:void test...
2019-03-05 14:01:27 11560 4
原创 Java程序运行参数
Java应用程序运行参通常有几种:1. 系统环境变量通过 System.getenv() 函数可以获取指定的环境变量getenv()有了两个实现,可以分别获取指定的环境变量和全部所以的环境变量2. 程序运行时的命令行参数该参数通过运行时命令行传入,也就是main函数的 String [] args3. classpath参数ClassLoader.getRe...
2019-02-28 16:46:40 815
原创 SpringBoot使用applicaton.yaml
方式一: 使用配置类@ConfigurationProperties@EnableConfigurationProperties 该注解是配合 @ConfigurateionProperties 来使用的,只需要在EnableConfigurationProperties注解的values内声明即可。如果不用EnableConfigurationProperties注解的话,可以直接在...
2019-02-27 15:20:08 200
原创 记一次C++堆对象使用错误
不要将string对象的c_str()作为参数使用, 因为当string释放后,c_str()返回值失效,且不一定会出问题。 当堆内存移动时,将会导致c_str()引用的时候出现bug,甚至是宕机。。。 记: 切忌将string的c_str()返回值当做 const char* 来使用...
2019-02-25 13:51:31 171
转载 Linux环境下段错误的产生原因及调试方法小结
最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多、花费时间最长的问题就是著名的“段错误”(Segmentation Fault)。借此机会系统学习了一下,这里对Linux环境下的段错误做个小结,方便以后同类问题的排查与解决。1. 段错误是什么一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,...
2018-10-24 14:07:25 1418
转载 TCP连接的状态详解以及故障排查
我们通过了解TCP各个状态,可以排除和定位网络或系统故障时大有帮助。(总结网络上的内容) 1、TCP状态 了解TCP之前,先了解几个命令: linux查看tcp的状态命令:1)、netstat -nat 查看TCP各个状态的数量2)、lsof -i:port 可以检测到打开套接字的状况3)、 sar -n SOCK 查看tcp创建的连接数4)、tcp...
2018-09-13 18:33:29 2992
原创 解决bug记录
每次查bug最头痛的就是,不知道如何复现,或者说是这个bug是如何操作才触发的。 偶发bug主要触发条件:某个时间 某个操 指针越界导致其他对象内存被修改 ...等等 解决bug几点看法:首先要跟踪发生bug时的数据,最直观的就是查程序运行异常日志。大部分的问题都可以通过查看异常日志找到思路。其次就是查看最近程序修改记录,跟进修改过的代码是否可能导致当前的bug发生...
2018-08-12 11:23:29 670
原创 客户端开发注意事项
游戏客户端开发杂记1. 延迟任务关于动画和动作、消息处理等的具有延时处理的工作,应统一管理起来,以避免在网络卡顿,且后台时在网络恢复后出现混乱,且不好查找问题2. 游戏数据管理游戏中用到的公用数据,统一放在一个地方管理,并且最好不要直接对变量进行更改和赋值,因为如此当出现问题时,便很难准确的找到问题出在哪里3. 逻辑模块可严格按照MVC来进行
2017-11-02 15:27:23 463
原创 c/c++ 时间函数 localtime 坑
localtime() 函数返回的数据 struct tm* 内存空间由其自己管理。 且连续调用时,第二次的调用会修改第一次的数据。 返回的时间为本地时区时间
2017-10-30 14:42:11 3939
原创 游戏客户端开发杂记
1. 延迟任务关于动画和动作、消息处理等的具有延时处理的工作,应统一管理起来,以避免在网络卡顿,且后台时在网络恢复后出现混乱,且不好查找问题2. 游戏数据管理游戏中用到的公用数据,统一放在一个地方管理,并且最好不要直接对变量进行更改和赋值,因为如此当出现问题时,便很难准确的找到问题出在哪里3. 逻辑模块可严格按照MVC来进行客户端的开发,将数据和业务拆开
2017-10-10 14:11:38 1021
转载 Build & Install GCC4.6.3 in CentOS (5.2 & 6.3)
I did not know if you have already installed gmp, mpfr, mpc before build gcc4.6.3, if you did not, please refer to these to build GCC4.6.3:and you could download all of the packages from my Share_
2017-07-09 09:52:51 377
转载 ubuntu 10.10不再提供支持后的source list 更新
今天安装软件时,发现ubuntu 10.10的163源无法连接了。上网查了一下,是因为已经过了支持期了,但是又不想换到12.04,所以就想着如何替换一下现在的源。到论坛上问了一下,有一哥们提供了线索,于是找到了方法,修改为如下源即可:## Major bug fix updates produced after the final release of
2017-07-09 09:51:39 562
原创 阅读项目代码,一些总结
阅读项目代码,一些总结。1. 应使得枚举名,变量名、函数名、类名等名称,同索要表示的含义是相同的。 命名应当准确和简洁2. 方法不能太长。倘若方法太长,会增加阅读代码理解难度。最好不能超过一个屏幕显示的内容3. 不要在代码中写死数字或者字符串,应当使用常量来表示,如果该常量在多个文件中引用,最好将它们定义在一个文件中,方便管理和
2017-05-22 10:18:06 556
原创 sublimeText2 使用
sublimeText 可以不用注册人长期试用。插件管理器:ctrl + ` 打开控制台,输入:import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();os.makedirs(ipp) if not os.path.exists(ipp) else
2017-04-23 16:35:52 392
转载 linux下非root用户安装软件入门
本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址:http://www.tlanyan.me/work-with-linux-without-root-permission从windows转移到Linux的用户最开始总会有各种不适,因为这种不适最终放弃linux的不在少数。对于这类人只能说可惜,还没有领略到linux的美好就过早
2017-03-13 23:16:10 17981
原创 Failed to detect version of solution/project file
原文: http://xoreax.helpserve.com/Knowledgebase/Article/View/125/0/failed-to-detect-version-of-solutionproject-fileKnowledgebaseFailed to detect version of solution/project f
2016-07-18 23:19:50 1156
原创 google-v8编译
说明:v8 third_party 和depot_tools svn root目录: https://src.chromium.org/svn/trunk/tools/如果在编译过程中有什么问题,也可以给我消息,我会尽快回复,如发现错误,也请指正。欢迎共同学习!QQ312919010 注意:生成VS工程时,需要使用python2.7。但编译时,third_party下一定...
2016-04-26 14:08:14 1742
转载 开源C++项目Google JavaScript引擎V8挑战实录,带你进入V8之旅
--写在开始按照今年的计划,需要研究一个有使用价值的linux下的C++开源项目,无意中发现了V8,觉得还不错,于是记录下来,希望对大家有所帮助。V8是一个由丹麦Google开发的开源JavaScript引擎,用于Google Chrome中,Chrome是现有的浏览器中速度相对比较快的一个,这完全得益于V8的效率,另外,作为一个独立的项目,V8也可以嵌入到我们自己开发的项目中运行,查
2016-03-10 19:36:50 1235
转载 c++类的隐式转换与强制转换重载详解
c++类的隐式转换与强制转换重载详解在写这篇文章之前,让我们先回顾一下编译器通过匹配过程确定调用哪一个函数的匹配顺序:(1)寻找和使用最符合函数名和参数类型(包括返回值)的函数,若找到则调用;(2)否则,寻找一个函数模板,将其实例化产生一个匹配的重载函数,若找到则调用;(3)否则,寻找可以通过类型转换进行参数匹配的重载函数,若找到则调用它。如果以上步骤均未找
2016-02-29 17:54:58 3490 1
原创 smbpasswd 用法
smbpasswd 命令,用于samba服务中对用户权限进行管理。使用时,需要管理员权限。下面列出的是几个常用的选项。smbpasswd [option] usernameoptions:-a 添加用户 -x 删除用户-d 冻结用户实例:1. 添加用户$ sudo smbpasswd -a test1根据提示输入密码
2016-01-10 22:48:39 11565 2
转载 字符编码简介
编码一直是让新手头疼的问题,特别是 GBK、GB2312、UTF-8 这三个比较常见的网页编码的区别,更是让许多新手晕头转向,怎么解释也解释不清楚。但是编码又是那么重要,特别在网页这一块。如果你打出来的不是乱码,而网页中出现了乱码,绝大部分原因就出在了编码上了。此外除了乱码之外,还会出现一些其他问题(例如:IE6 的 CSS 加载问题)等等。潜行者m 写出本文的目的,就是要彻底解释清楚这个编码
2015-12-27 17:10:57 539
原创 ubuntu从tty终端模式返回到图形桌面
有很多的刚开始使用ubunt的同学,并不清楚 ctrl + alt + f1 ~f6 是什么功能。然后误操作进入了控制台tty,然后却不知道怎么返回到图形桌面环境。其实只只需要 ctrl + alt +f7 就可以了。
2015-12-20 23:10:14 32253 7
转载 TCP端口介绍
TCP端口就是为TCP协议通信提供服务的端口。TCP (Transmission Control Protocol) 传输控制协议,TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议。在计算机网络OSI模型中,TCP端口完成第四层传输层所指定的功能。我们的电脑与网络连接的许多应用都是通过TCP端口实现的。本文与大家分享部分TCP端口
2015-12-20 16:53:49 2516
原创 c/c++ 宏函数的应用
声明: 以下涉及到的概念和理解,仅仅是建立在概念学习和实践后的理解。所以如果有概念上的错误,请拍砖,再下非常感谢!宏的使用在c/c++语言中的运用由于其的预处理时期的替换特性被广泛的应用。虽然宏在c++项目中的使用并不被提倡,甚至是被抑制的。但是却不能否认它在实际开发中的便利性。之所宏不被提倡使用,是由于其不会是在预处理阶段中进行的,且并不没有类型检查、正确性验证等等操作。
2015-12-13 18:51:52 1752
转载 vim 更改备份文件配置
来自百度文库:点击打开链接一般来说VIM不会备份文件,你可以执行cp /usr/share/vim/vim64/vimrc_example.vim ~/.vimrc将vimrc_example.vim拷贝到当前用户的主目录并改名为.vimrc,该文件里面如下代码就打开了VIM的备份功能:if has("vms")set nobackup " do
2015-11-22 14:46:39 3993
原创 为什么.h文件中不能定义全局变量
原因: 存在多次创建变量.如果头文件中可以定义全局变量,那么每个包含该头文件的文件里都会有该全局变量的定义.因为C语言的include是直接将文件嵌入到include这个地方的. 解决办法: 在头文件使用 extern 来声明该全局变量,然后再任意一个cpp文件中定义该变量.全局变量是存放在静态区的.会被默认初始化为0.
2015-11-11 02:58:54 10344 5
转载 Linux 硬链接与软链接
原贴:http://www.51testing.com/?26162/action_viewspace_itemid_17598.htmlLinux 硬链接与软链接2007-08-05 10:19:49Linux 硬链接与软链接2006-12-01 15:03首先要弄清楚,在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点)
2015-10-24 12:22:13 448
转载 把vim打造成牛逼的C++ IDE
原文:http://blog.csdn.net/doc_sgl/article/details/47205779对于windows上做C++开发的用户来说,vs为他们做了大量的工作,语法高亮、自动缩进、智能提示等等,当你happy的使用vs时,请记住一点,这是一个收费软件,虽然在我大中华普遍都在使用微软的盗版软件,但作为程序员我们心里应该知道这是不对的行为,然后再去——等等,我
2015-10-21 16:25:05 764
转载 如何加快C++代码的编译速度
C++代码一直以其运行时的高性能高调面对世人, 但是说起编译速度,却只有低调的份了。比如我现在工作的源代码,哪怕使用Incredibuild调动近百台机子,一个完整的build也需要四个小时,恐怖!!!虽然平时开发一般不需要在本地做完整的build,但编译几个相关的工程就够你等上好一段时间的了(老外管这个叫monkey around,相当形象)。想想若干年在一台单核2.8GHZ上工作时的场景 -
2015-05-27 15:59:46 781
转载 静态链接库lib, 动态链接库dll,导入库lib的区别
动态链接库有两种两用方式,分别是动态调用.dll和静态调用导入库.lib,那么动态链接库的静态调用方式与静态链接库调用有什么区别?带着这个问题,查找到以下资料。(问题的答案已用褐色标出)(下述资料来源)一、动态链接库的概念 动态链接库(Dynamic Link Library,缩写为DLL)是一个可以被其它应用程序共享的程序模块,其中封装了一些可以被共享的例程和资源。动态链接库
2015-04-06 18:16:13 995
转载 【Cococs2d-x】通过TexturePacker加密图片资源(Cocos2d-x方式)
TexturePacker最新版本中增加了一个新功能以防止你的产品资源被反编译出来。它被称为ContentProtection,即图片加密。但目前官方只支持Cocos2d-iphone的解密.TexturePacker作者说,不久Cocos2d-x也将集成解密功能.代码已经提交Cocos2d-x github官方库.(文章内容复制泰然论坛TexturePacker 图片加密,只是修改了相应部分
2015-03-17 13:11:09 713
转载 哈希(Hash)与加密(Encrypt)的基本原理、区别及工程应用
原文链接:http://www.cnblogs.com/leoo2sk/archive/2010/10/01/hash-and-encrypt.html哈希(Hash)与加密(Encrypt)的基本原理、区别及工程应用0、摘要 今天看到吉日嘎拉的一篇关于管理软件中信息加密和安全的文章,感觉非常有实际意义。文中作者从实践经验出发,讨论了信息管
2015-03-17 13:01:39 1104
debugging with gdb
2016-01-17
cmake 学习
2015-06-20
动态库的导出和使用问题
2015-04-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人