- 博客(38)
- 收藏
- 关注
原创 tmux 工具使用,终端分屏
1 安装:sudoapt-getinstalltmux可能会遇到问题,自行搜索解决2安装成功后在~路径下创建文件 .tmux.conf将下面内容拷贝到.tmux.conf文件中:bind R source-file ~/.tmux.conf \; display-message "Config reloaded..."# remap prefix from ...
2020-05-02 14:23:49
361
转载 CGAL详细安装教程
不知如何使用此编辑器进行图片粘贴,造成文档不能显示图片。CGAL的详细安装教程参考网址:https://wenku.baidu.com/view/e29951d9185f312b3169a45177232f60ddcce7c4
2017-04-25 22:13:03
3956
2
转载 引用头文件的的放置
但是我们有时候会遇到这样的一个问题a.cpp 要调用b.cpp中的函数,而b.cpp又要调用a.cpp 的函数 。这就牵扯到相互调用 这是如果我们把b.h中包含a.h, a.h中包含b.h。这是后编译会出现问题。解决的办法是将a.h包含在b.cpp中,将b.h包含在a.cpp中。这样就能解决问题。 很简单,如果想提供给其他模块,就在头文件中定义,如果只是一个单独的CPP文件中用到,
2017-03-22 16:54:12
545
转载 堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两
2017-03-20 19:47:04
257
转载 opengl 使用soil读入bmp图像作为纹理
注意代码中要添加依赖库!!。soil还是非常好用的,下载地址网上有,注意版本,在不同的文件中有对应的vs的版本转载自:http://blog.youkuaiyun.com/mutex86/article/details/8905813 copy// TextureTest.cpp : 定义控制台应用程序的入口点。 // #include "s
2017-03-18 19:32:16
1803
转载 OpenGL纹理详解(下)
转载自:http://www.jianshu.com/p/2d31eae7c3d8纹理的加载当我们设置好纹理对象后,就可以加载我们的纹理数据了。下面这个例子演示了如何加载一幅2*2像素的纹理:加载一幅2*2的纹理 这个函数非常重要,下面我们来看一下每个参数所表示的意义:第一个参数很简单,表示绑定纹理对象的种类,这里我们依然以GL_TEXTUR
2017-03-16 19:26:51
652
转载 OpenGL纹理详解(上)
转载自:http://www.jianshu.com/p/1829b4acc58d写在前面的话现实生活中,纹理最通常的作用是装饰我们的物体模型,它就像是贴纸一样贴在物体表面,使得物体表面拥有图案。但实际上在OpenGL中,纹理的作用不仅限于此,它可以用来存储大量的数据,一个典型的例子就是利用纹理存储地形信息。纹理对象和参数 现代OpenGL中,纹理对
2017-03-16 19:21:52
962
转载 Opengl教程之读取stl文件并绘制在picturecontrol控件内
Opengl教程之读取stl并绘制在picturecontrol控件内By Cracent本文转载自:http://blog.youkuaiyun.com/cracent/article/details/51049246作为机械专业方向的人员,我们经常需要用SolidWorks构建模型。有些时候我们被要求将这些模型通过OPENGL进行表达。STL 是三维模型常用的文件格式,其使用三
2017-01-11 11:16:11
3962
转载 Opengl教程之 读取obj并绘制在picturecontrol控件内
Opengl教程之读取obj并绘制在picturecontrol控件内By Cracent注:本文将简单图文表述基于MFC对话框的OpenGL三维显示(picture control 类版)以及obj文件读取绘制目录一、配置相应环境 二、建立CMyStatic类2.1 添加类2.2 类向导2.2.1添加消息处理函数OnTimer()
2017-01-11 11:04:33
1814
2
转载 在一个千万级的数据库查寻中,如何提高查询效率?
1)数据库设计方面: a. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。b. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:
2016-12-16 15:49:52
455
原创 c#中日期时间格式的转换(空位补0)
在c#中DateTime dt1 = this.dateTimePicker1.Value;string startTime1 = dt1.ToString("yyyy-MM-dd HH:mm:ss");string startTime2 = dt1.ToString("yyyyMMddHHmmss");返回结果值分别为:startTime1 "2016-12-14 22:
2016-12-14 22:36:29
9231
转载 数据库设计的几个建议
本文导读:数据库设计是信息系统设计的基础,一个好的数据库设计在满足了软件需求之外,还要易维护、易扩充等等要求,还要考虑到数据的一致性、冗余性、访问效率,数据库设计包括:库的设计,表的设计,字段的设计,主键和外键的设计,索引设计,约束设计等等,下面介绍数据库设计的几个建议一、一般好的数据库设计需要注意以下几点 1、一个好的数据库设计首先要满足用户的需求所有信息系统最后
2016-12-14 20:37:42
767
原创 chart控件运行时在右上角只显示series,其他部分空白
在新建winform,我们用vs2010自带的chart控件向winform窗体中添加时,菜单栏中:视图-》工具箱》数据》chart,直接调式:结果如下:chart绘图区域空白,只有一个series1。但是我们想不绑定数据,也能有控件的坐标图信息的效果。如何实现呢?实现方法:先选中控件,右击,选择属性,series所对应的(集合)中poi
2016-12-12 17:48:53
4683
1
转载 C#控件随着窗口大小变化而自动变化
在设计可供用户调整大小的窗体时,如何实现该窗体上的控件也应能正确地随窗体的改变而自动调整大小并且能重新定位?此时就要借助控件的.Anchor属性。Anchor属性定义控件的定位点位置。当控件锚定到某个窗体时,如果该窗体的大小被调整,那么该控件维持它与定位点位置之间的距离不变。例如,如果“:Button”控件锚定到窗体的左、右和底边缘,那么当调整该窗体的大小时,Button控件水平调整大小,维持到该
2016-12-12 17:10:54
1971
转载 影响SQL Server数据库访问速度的因素总结及优化方案
SQL Server数据库访问速度慢可能的原因有很多,本文我们对这些因素进行了总结,并给出了优化方案,接下来就让我们一起来了解一下这部分内容吧。性能影响因素常见的影响数据访问速度的因素,有以下几种:1. 没有索引或者没有用到索引 数据库索引就像书籍中目录一样,使用户在访问数据库数据时,不必遍历所有数据就可以找到需要的数据。创建索引后,可以保证每行数据的唯一性,极大地提高数据检索效率,这
2016-12-11 20:31:29
1557
转载 关于winForm窗体最大化的设置(转)
1. 窗体最大化时 非全屏 不会遮盖任务栏private void btnFormMax_Click(object sender, EventArgs e) { if (this.WindowState == FormWindowState.Maximized) { this.WindowState = FormWindow
2016-12-11 20:20:49
21501
9
转载 this.hide(),this.close(),this.dispose(),以及this.Hide()与this.Visible、Application.Exit与this.Close()区别
首先,假设你所说的 this 是指一个 WinForm 窗体。this.Hide()隐藏窗体后还可用 this.Show()重新显示其。而且 Hide 一旦执行不能被中止。this.Close() 若关闭成功,则 this 也就变为垃圾内存,等待垃圾内存自动回收器(GC)回收。但 Close 操作是可以被终止的,通过 Closing 事件检查是否真的可以退出,如果不行,请设置 Ca
2016-12-11 10:33:06
10880
3
转载 使用foreach 循环删除DataRow的时候的问题
http://hi.baidu.com/ilovehaley/blog/item/906be189f1087fba0e24446d.html集合已修改;枚举操作可能无法执行。使用foreach 循环删除DataRow的时候的问题!1.需求 从页面上获得多条记录到DataTable-->从DataTable里删除数据库里已有的记录--》把没有的记录插入到数据库中去。2.实现思路:获得页面
2016-12-09 11:01:19
3302
转载 C# DataSet和DataTable详解
1、创建DataSet对象:DataSet ds = new DataSet("DataSetName");2、查看调用SqlDataAdapter.Fill创建的结构da.Fill(ds,"Orders");DataTable tbl = ds.Table[0];foreach(DataColumn col in tbl.Columns)Conso
2016-12-09 10:53:56
888
转载 使用WinForm Chart控件 制作饼装,柱状,折线图
chart控件的属性很多,主要用到Chart控件图表区域的属性有五个属性1.Annotations :批注集合(我没怎么用到,但是配置的话会在图标区域出现一些可以备注的东西吧) 2.ChartAreas: 图表区属性;主要设置图标数据的背景,比如3D或者隐藏还是显示横纵轴交叉线,分块颜色显示等 3.Lengends: 图表图例集合 主要设置图表边说明的一些东西,这次项目没什么用到,但是觉得这个
2016-12-07 20:52:23
33917
转载 SQL server 之存储过程(2)
简单来说,存储过程就是一条或者多条sql语句的集合,可视为批处理文件,但是其作用不仅限于批处理。本篇主要介绍变量的使用,存储过程和存储函数的创建,调用,查看,修改以及删除操作。一:存储过程概述SQL Server中的存储过程是使用T_SQL编写的代码段。它的目的在于能够方便的从系统表中查询信息,或者完成与更新数据库表相关的管理任务和其他的系统管理任务.T_SQL语句是SQL Ser
2016-12-02 16:06:49
1361
转载 SQL Server之存储过程基础知识(1)
什么是存储过程呢?存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。 通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句。那为什么要用存储过程呢?1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。2.当对数据库进行复杂操作时,可将此复杂操作用存储过程封装起来与数据
2016-12-02 15:54:41
185
转载 SQLServer : EXEC和sp_executesql的区别
摘要1,EXEC的使用2,sp_executesql的使用 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它提供了输入输出接口,而EXEC没有。还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能(对于这个我在后面的例子中会详加说
2016-12-02 09:02:54
211
转载 SQL字符串拼接 引号问题
动态sql语句基本语法 1 :普通SQL语句可以用Exec执行 eg: Select * from tableName Exec('select * from tableName') Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2016-12-01 20:00:08
3727
转载 C#和C++混合编程
由于历史原因,很多时候我们的代码并不完全是使用.NET写成的。这时候和以往C++代码的混合编程就显得相当重要了。最近碰到了这样的问题,将方法简要记述如下。调用简单的C++函数要在C#代码中调用C++函数,大体的思路是这样的:首先将C++函数写成DLL形式的库,然后在C#中导入DLL中的函数进行调用。具体的代码类似这样:C++代码:1 int StaticElementNum
2016-11-25 09:10:09
1116
转载 Levenberg-Marquardt算法
L~M方法:L~M(Levenberg-Marquardt)方法有些让人摸不清头脑。玉米觉得L~M让人困扰的主要原因有两点:一是L~M从何而来、二是L~M怎么样用?因为玉米也不是研究最优化理论的,所以玉米在这里用较为通俗的观点,为大家分析一下L~M方法。在数学上的不严谨之处,期望大家海涵。一、L~M从何而来首先,L~M方法首先是一种非线性规划方法;其次其主要用于无约束的多维
2016-11-18 14:30:53
18445
2
转载 三维重建技术概述
基于视觉的三维重建,指的是通过摄像机获取场景物体的数据图像,并对此图像进行分析处理,再结合计算机视觉知识推导出现实环境中物体的三维信息。1. 相关概念(1)彩色图像与深度图像彩色图像也叫作RGB图像,R、G、B三个分量对应于红、绿、蓝三个通道的颜色,它们的叠加组成了图像像素的不同灰度级。RGB颜色空间是构成多彩现实世界的基础。深度图像又被称为距离图像,与灰度图像中像素点存储
2016-11-16 10:26:20
4618
转载 Eigen: C++开源矩阵计算工具——Eigen的简单用法
Eigen非常方便矩阵操作,当然它的功能不止如此,由于本人只用到了它的矩阵相关操作,所以这里只给出了它的一些矩阵相关的简单用法,以方便快速入门。矩阵操作在算法研究过程中,非常重要,例如在图像处理中二维高斯拟合求取光斑中心时使用Eigen提供的矩阵算法,差不多十来行代码即可实现,具体可见:http://blog.youkuaiyun.com/hjx_1000/article/details/8490653
2016-11-16 08:55:38
684
转载 位姿:***图像特征-特征提取-姿态估计
原文链接:http://blog.youkuaiyun.com/cloverwindy/article/details/8443296有少量修改,如有疑问,请问原作者!常用的图像特征有颜色特征、纹理特征、形状特征、空间关系特征。 一 :颜色特征 (一)特点:颜色特征是一种全局特征,描述了图像或图像区域所对应的景物的表面性质。一般颜色特征是基于像素点的特征,此时所有属于图像或图像区域的像素都
2016-11-08 10:39:26
10078
转载 c++对象内存模型(内存布局)
#类中的元素0. 成员变量 1. 成员函数 2. 静态成员变量 3. 静态成员函数 4. 虚函数 5. 纯虚函数#影响对象大小的因素0. 成员变量 1. 虚函数表指针(_vftptr) 2. 虚基类表指针(_vbtptr) 3. 内存对齐_vftptr、_vbtptr的初始化由对象的构造函数, 赋值运算符自动完成;对象生命
2016-10-19 14:04:51
388
原创 scanf()取地址
程序代码如下: float a=0.0, b=0.0, c=0.0, s=0.0, area=0.0;scanf("%f,%f,%f",&a, &b, &c);printf("a=%f,b=%f,c=%f\n", a, b, c);如果变量的类型不是float,而是int,则会造奇怪的结果。scanf参数的转换说明必须与后续的参数中的值得类型匹配。%f必须与&a中a
2016-10-13 17:36:08
716
转载 Getchar(),Getch()函数
getchar() 由宏实现:#define getchar() getc(stdin) getchar()有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符(\n)也放在缓冲区中). 当用户键入回车之后,getchar()才开始从stdio流中每次读入一个字
2016-09-28 15:14:26
256
翻译 指向函数的指针
bool(*pf)(const string &, const string &);//定义了一个指向(函数类型由其返回类型以及形参表决定)函数的指针。//int app;int是整型类型;//typedef int kk; //cmpFcn是一个指向函数的指针类型的名称,指针的类型(指向一个返回bool类型并带有两个const string 引用形参的函数)typedef
2016-09-26 12:43:57
284
翻译 前自增与后自增到底啥区别?
前自增操作:该操作使其操作数加1,操作结果是修改后的值。后自增操作:同样对其操作数加 1(或减 1),但操作后产生操作数原来的、未修改的值作为表达式的结果。前置操作返回加1后的值,所以返回对象本身,这是左值。而后置操作返回的则是右值。前自增:int i = 0, j;j = ++i; // j = 1, i = 1: prefix yields incre
2016-09-20 10:09:49
8234
原创 我对指针的误解
int ival = 1024;int *pi = &ival;int **ppi = πint *pi2 = *ppi;指针变量pi,ppi,pi2;都是将右值赋值到变量,将&ival赋值给指针变量pi,将&pil赋值给指针变量ppi,将 *ppi赋值给指针变量pi2,而不是*ppi=&pi,*pi2=*ppi。这是我理解错误的地方,一定要改正。
2016-09-18 12:37:41
271
原创 对于scanf_s越界问题
在程序调试时,经常遇到0xc0000005越界问题。可能情况1,数据超出范围,2,指针未初始化。scanf_s()函数出现越界问题,可能就是由于scanf()与scanf_s()函数的区别不清楚。scanf()在读取数据时不检查边界,所以可能会造成内存访问越界.scanf_s提供更安全一些的机制 ,以防止溢出 , 变量取地址后要紧跟一个数字以表明最多读取多少位字符。避免引用到不存在的元
2016-09-06 22:28:26
2385
原创 有关struct错误的总结1
//显示屏幕信息。//结构体赋值初始化 #define NUMLINES ((int)(sizeof sysmetrics/sizeof sysmetrics[0]))struct { int iIndex; TCHAR *szLabel; TCHAR *szDesc;} sysmetrics[]={ SM_CXSCREEN,
2015-12-01 17:34:57
436
原创 windows程序设计中PlaySound的问题解答
1.#include "mmsystem.h" #pragma comment(lib, "winmm.lib") 这两个文件放在#include之后。2.把音乐xx.wav放在所属的xx.cpp文件所在的文件中如图所示3. PlaySound(TEXT("画中仙的记忆.wav"), NULL, SND_FILENAME | SND_ASYNC);4. 音乐
2015-11-16 15:16:36
855
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人