- 博客(40)
- 收藏
- 关注
原创 explicit 关键字
C++中构造函数的作用有两个 1. 构造器 2. 默认且隐含的类型转换操作符 举个栗子:class testClass{public: testClass(void); ~testClass(void); testClass(int x) { m_ix = x; }private: int m_ix; double
2016-04-28 11:35:21
546
原创 C++ override 关键字用法
override关键字作用: 如果派生类在虚函数声明时使用了override描述符,那么该函数必须重载其基类中的同名函数,否则代码将无法通过编译。举例子说明struct Base { virtual void Turing() = 0; virtual void Dijkstra() = 0; virtual void VNeumann(int g) = 0;
2016-04-28 09:59:05
110545
24
原创 缺少dll
通常dll在安装程序的bin目录下可以直接将dll文件拷贝到相关报错程序下面如果dll文件过大,直接拷贝的方法会造成存储浪费,可以将含有dll文件的bin目录添加到path环境变量下
2016-03-14 09:18:02
564
转载 OPENGL固定图形渲染管线
转自:http://blog.youkuaiyun.com/phpxin123/article/details/7409005 1.顶点(vertexs) 图元(primitives) 片元(fragments,又叫片断) 像素(pixels)阶段1. 顶点 ->图元几何顶点被组合为图元(点,线段或多边形),然后图元被合成片元,最后片元被转换为帧缓存中的象素数据。阶段2. 图元 ->片元图元被分几步转换
2016-03-11 14:17:36
1744
原创 0xC0000005: Access Violation
写VBO时,调用函数glGenBuffers,出现访问冲突错误 解决方法:调用之前必须使用glewInit()
2016-03-08 15:57:27
1533
原创 QT三种布局的使用方法
QT 的三个布局管理器分别是: QHBoxLayout 水平布局 QVBoxLayout 垂直布局 QGridLayout 表格布局以下g为表格布局 a b 为水平垂直布局任一个 a.addLayout(b) 添加b布局到a上 a.addSpacing(20) 添加20水平宽度的空白 b类型 垂直方向 a.addStretch(10) 添加一个固定长度的延伸 b.addWidget
2016-03-03 15:24:47
3017
原创 选择的文件是解决方案文件 但是用此应用程序的较新版本创建的,无法打开
问题描述:选择的文件是解决方案文件 但是用此应用程序的较新版本创建的,无法打开 解决方法:以VS2008打开VS2010的工程为例,讲解使用低版本的VS打开高版本的解决方案 修改解决方案.sln文件的前两行内容,如: 修改前两行,改成一致的版本。 用VS2008打开修改后的.sln文件,重新编译
2016-03-02 11:12:37
15831
1
原创 There's no Qt version assigned to this project for platform Win32. Please use the 'change Qt version
问题描述:QT与VS2010结合时,由于电脑本身存在多个QT版本,默认版本与VS版本不兼容,或者第一个版本卸载不全,报错:There’s no Qt version assigned to this project for platform Win32. Please use the ‘change Qt version’ feature and choose a valid Qt version
2016-03-02 08:55:47
10752
转载 jfreechart
要想绘制出漂亮的图表,就必须了解图表的构成部分,将图表进行分解成N个部分。 然后再对每一个部分进行渲染,设置样式:包括背景色、轮廓线条样式和颜色、填充颜色、字体大小、样式、颜色。 同时,需要确保在整个项目中,图表的样式风格整体统一。 统一,和谐才能打造漂亮、干净、专业的外观. 使用JfreeChart创建柱状图,折线图,饼图,堆积柱状图,时间序列图,二维Y轴坐
2015-11-27 15:22:23
3408
原创 Vector 二维数组动态申请和访问
//初始化二维数组 int m,n;cin >> m >> n;vector > a;for (int i = 0; i {vector tempvec;for (int j = 0; j {int tempval;cin >> tempval;tempvec.push_back(tempval);}a.push_back(tem
2015-09-30 14:46:26
1521
原创 sql类型转换和精度控制
查询平均成绩小于60分的同学的学生编号和学生姓名和平均成绩 select a.S# , a.Sname , cast(avg(b.score) as decimal(18,2)) avg_score from Student a , sc b where a.S# = b.S# group by a.S# , a.Sname having cast(avg(b.score) as
2015-09-28 10:16:29
4007
转载 struts-jfreechart整合配置
2.修改web.xml struts2org.apache.struts2.dispatcher.FilterDispatcherstruts2/*修改成: struts-prepareorg.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilterstruts-execu
2015-09-15 15:44:13
441
转载 JSP 6个常用标签
一、Include指令 标签表示包含一个静态的或者动态的文件。 语法: or 注: 1、page="path" 为相对路径,或者代表相对路径的表达式。 2、flush="true" 必须使用flush为true,它默认值是false。 3、子句能让你传递一个或多个参数给动态文件,也可在一个页面中 使用多个 来传递多个参数给动态文件
2015-09-10 10:30:11
827
转载 JSP页面常用控件及操作
1.点击按钮返回 上一页: 2.点击按钮跳转到另一个jsp页面: 3.复选框 :保存登录名 4.背景图片超链接:评价 5.在js中获取html中表单元素的value值:function show() { alert(document.getElementById("txt").value
2015-09-08 15:01:51
2629
原创 error : identifier “atomicAdd” is undefined
在VS2010下的CUDA程序中出现错误error : identifier “atomicAdd” is undefined的解决办法搜集整理error : identifier “atomicAdd” is undefined VS2010解决方案:Project properties里面-->CUDA Runtime API-->Generalcompute_10, sm_1
2015-08-18 22:27:22
1810
原创 面试题记录(B1)
1. 给出拷贝函数的定义void * memcpy(void *dest, const void *src, size_t len)写出拷贝函数体void 意为“无类型”,void*是指无类型的指针,可以指向任何类型的指针1) void 的使用void a; 报错:非法使用void 类适用场合:一是对函数返回值的限定(函数没有返回值的情况使用)二是对函数参数的限定(函数没有
2015-08-11 16:45:59
697
原创 幻灯片母版使用
幻灯片母版设置在ppt文件中,进入到幻灯片母版编辑模式(视图菜单下选择“母版”,再选择“幻灯片母版”),然后直接编辑这个幻灯片母版,设置标题的字体,再通过自定义动画,设置标题的显示效果,其它文字一样设置。编辑好幻灯片母版后,再插入一个新标题母版,同样设置好想要的显示效果,然后退出母版编辑模式(关闭母版视图),回到幻灯片编辑模式,则每张幻灯片效果都会跟幻灯片母版,每张标题幻灯片都会跟标题母版设置
2015-08-08 23:14:39
1125
转载 一个项目涉及到的50个Sql语句
转载自:http://bbs.youkuaiyun.com/topics/340046949 /* 标题:一个项目涉及到的50个Sql语句(整理版) 作者:爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 时间:2010-05-10 地点:重庆航天职业学院 说明:以下五十个语句都按照测试数据进行过测试,最好每次只单独运行一个语句。 问题及描述: –1.学生表 Student(S#,Sname,S
2015-07-23 10:09:02
890
转载 SQL left join,right join,inner join用法
转载自:http://www.cnblogs.com/pcjim/articles/799302.html 1.left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 2.right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 3.inner join(等值连接) 只返回两个表中联结字段相等的行举例如下:
2015-07-23 09:57:16
487
原创 KMP算法讲解
1.简单匹配算法(暴力法) 算法思想直截了当,将文本串S中从某个位置i起与模式串T相比较,从 j=0 起比较 S[i+j] 与 T[j],如果相等继续向后比较(j+1)如果不相等,模式串回溯至开始处(j=0)文本串从当前的位置的下一个位置进行匹配(i+1)。 算法函数如下: void GeneralMatch(const char ssrc[],const char sdst[], int &
2015-07-21 21:51:38
396
原创 VS2010 无法显示中文
控制面板中找到“更改键盘或其他输入法” ----> “键盘和语言”中选择“更改键盘”在“高级键设置” 中选择“更改按键顺序”在“切换输入法”一栏中 勾选“Ctrl + Shift(C)”
2015-07-07 22:24:12
2234
原创 使用vector容器创建二维数组
定义形式:vector> array;初始化方式: for(int i = 0; i { vector temparray; for(int j = 0; j temparray.push_back(i +j); array.push_back(temparray); temparray.erase(temarray.begin(
2015-07-07 22:10:39
4195
转载 C++中函数调用中的内存分配
转自:http://blog.youkuaiyun.com/zztfj/article/details/7987645一、内存分配 在谈述函数调用和返回值问题之前,先来看看C++中内存分配的问题。 C++编译器将计算机内存分为代码区和数据区。很显然,代码区就是存放程序代码,而数据区则是存放程序编译和执行过程出现的变量和常量。数据区又分为静态数据区、动态数据区,动态数据区包括
2015-05-12 11:41:28
1789
转载 OpenGL光照和材质
转自:http://www.cnblogs.com/phinecos/archive/2007/09/19/899107.html26)光照模型有4部分:全局环境光,近视点或远视点,双面光照,镜面反射颜色是否和环境颜色,散射颜色分开。要指定全局环境光,可以如下:GLfloat ambient[] = {0.3,0.3,0.3,1.0};glLightModelfv(GL_LIGHT_MOD
2015-04-29 10:31:29
4431
原创 无法打开包括文件:“glm/glm.hpp”
问题:无法打开包括文件:“glm/glm.hpp”, 文件中包含 “glm/glm.hpp” 报错,但是可以打开文件 在工程中包含了glm 文件夹解决方案: 在项目属性中包含 ./glm 和 $(ProjectDir)
2015-03-22 19:02:37
13398
2
原创 assert()函数的使用
使用函数需要包含库: assert.h函数功能:如果它的条件返回错误,则终止程序执行函数用法:assert( expression) , 如果条件为真向下执行,如果为假程序终止注意事项:频繁的调用影响程序的性能,增加额外开销,包含#include 的语句之前插入 #define NDEBUG 来禁用assert调用
2015-03-11 10:43:20
420
原创 CPU 与 GPU 之间数据转换 cudaMemcpy
//显存上分配空间CUDA_SAFE_CALL(cudaMalloc((void**)&Dst_d,sizeof(float3) * totalPNum));//显存上传输数据CUDA_SAFE_CALL(cudaMemcpy(Dst_d, Srcdata0_h, sizeof(float3) * numdata0, cudaMemcpyHostToDevice));CUDA_SA
2015-03-01 10:22:36
12191
转载 引用传参和指针传参的差别.
在C++中,如果函数的实参的类型是数据类型比较大的数据类型,这是如果使用一般传参就会有很大的不方便,这是如果能够传递一个地址或者是对原来参数的一个引用对提高性能会有很大的帮助。 本文研究一下引用传参和指针传参的区别和联系。其实引用传参和指针传参都能够在条用函数内部对源数据进行修改,这是它们的共同点,但是它们也是有区别的。下面是一个例子:#include
2015-02-28 10:16:17
809
原创 函数参数设置默认值
在函数声明过程设置默认值bool loadOBJ( const char * path, samplePointSet* sample, TriangleSurface *surface, bool invert=true );在函数定义中不写bool loadOBJ( const char * path, samplePointSet* sample, TriangleSurfa
2015-02-28 09:56:01
662
原创 文件读写两种方式
1. FILE文件读:FILE* fs = fopen("file.txt","r");while( 1 ){char lineHeader[128];// read the first word of the lineint res = fscanf(file, "%s", lineHeader); //逐行扫描,遇到空格或者换行停止if (res == EOF)
2015-02-08 17:01:24
580
原创 Qt键盘事件 ESC
void GLWidget::keyPressEvent(QKeyEvent *event){switch(event->key()){ Qt::Key_Escape }}
2015-02-01 22:26:50
2552
转载 静态变量,静态局部变量的生存周期
首先要理解生存周期与作用域的区别:生存周期: 变量从定义到销毁的时间范围。存放在全局数据区的变量的生存周期存在于整个程序运行期间,而存放在栈中的数据则随着函数等的作用域结束导致出栈而销毁,除了静态变量之外的局部变量都存放于栈中。作用域: 变量的可见代码域(块作用域,函数作用域,类作用域,程序全局作用域)。static变量是指静态的变量,不管是在全局还是局部声明的static
2015-02-01 19:22:43
11642
原创 int main(int argc,char *argv[]) 参数
参数的含义是程序在命令行下运行的时候,需要输入argc 个参数,每个参数是以char 类型输入的,依次存在数组里面,数组是 argv[],所有的参数在指针 char * 指向的内存中,数组的中元素的个数为 argc 个,第一个参数为程序的名称。char *arcv[]的意思就是说 一个指针类型的数组,数组的每个元素也是一个数组,不过这个数组 argv []是字符串。
2015-02-01 19:11:47
438
原创 C++编译器与连接器区别
编译:编译器对源代码进行编译,是将以文本形式存在的源代码翻译为机器语言形式的目标文件的过程。编译单元:对于C++来说每一个cpp文件就是一个编译单元。各个编译单元之间是互相不可知的。编译器就是把我们写的源文件翻译成机器代码,连接器以编译器的输出作为输入,生成可执行文件。因为编译器的编译单元只是单独的每个CPP,所以有些跨文件的东西它没法处理,比如声明为extern 的变量(当你需
2015-02-01 18:59:33
3865
原创 VS 2008 添加错误调试窗口
为了方便调试,添加错误列表:中文版:方法 视图 --> 其他窗口--> 错误列表English: view->Other Windows->Error list
2015-01-30 11:09:00
956
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人