摘要:
在网上一位博主的博客中看了有关左旋字符串的算法,原文地址http://blog.csdn.net/v_july_v/article/details/6322882,此博文给出了很多种解法,在这里我提出一些自己的观点。 题目描述: 定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。 如把字符串abcdef左旋转2位得到字符串cdefab。 请实现字符串左旋转的函数,要求对长度为n的字符串操作的时间复杂度为O(n),空间复杂度为O(1)。 大家都知道,现在用算法用的最多的地方就是ACM了,现在假如我们把这道题看成一道ACM的算法题,那么题目就变得很简单了。因... 阅读全文
摘要:
在C/C++程序员的求职路上,在笔试中经常会遇到的题目就是继承方面还有构造函数方面的知识,下面我从一个例子给大家讲解一下这其中的知识点。 先看下面这个代码:#include <iostream>using namespace std;class B{public: B() { init(); } B(int i) {} virtual void init() { cout<<"Base::init()"<<endl; } virtual void Func() { cout<<"Base::Func()"& 阅读全文
摘要:
2010/9/19Render To Texture,即渲染到纹理,简称RTT,是非常简单但是非常有用的技术,下面先说一下怎么样编写代码,再说具体的用途。渲染到纹理,顾名思义,就是把我们要渲染的东西渲染到一张纹理上面,而不是像我们平常那样渲染到一张平面。1、首先,定义一些变量LPDIRECT3DTEXTURE9 pRenderTexture = NULL;//要渲染到的那张纹理LPDIRECT3DSURFACE9 pRenderSurface = NULL;//纹理的渲染对象2、创建空的纹理pd3dDevice->CreateTexture(…, pRenderTexture, …);其 阅读全文
摘要:
目录条款01:View C++ as a federation of languages.条款02:Prefer consts,enums,and inlines to #define.条款03:Use const whenever possible.条款04:Make sure that objects are initialized before they’re used.条款05:Know what functions C++ silently writes and calls.条款06:Explicitly disallow the use of compiler-generated 阅读全文
摘要:
在项目中,为了是设计更人性化,经常会要用鼠标去拖动物体,于是我就花时间写了个demo。之前我没有知道有MOUSEMOVE这个消息,于是就自己去想用LBUTTONDOWN和LBUTTONUP去实现MOUSEMOVE这个功能,最后悲剧了。开始我的想法是这样的,用POINT记录前后两次鼠标的位置,然后通过射线碰撞求出两个交点,进而求出平移矩阵。定义结构体记录鼠标点击的信息。typedef struct ... 阅读全文
摘要:
CFileDialog类是专门用来处理文件选择对话框的。下面介绍的是VS2003和6.0平台的MFC,VS2005及以上版本的参数有点不一样CFileDialog文件选择对话框的使用首先构造一个对象并提供相应的参数,构造函数原型如下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR... 阅读全文
摘要:
By: Anson| May 20th, 2008| Tags: c/cpp, CG 以前JAY写过一篇鼠标旋转物体算法的文,不过是OpenGL的。最近初学D3D,对忘光的向量和矩阵非常怨念,便自己写一篇D3D的文加强记忆。其实鼠标旋转物体的思路就是将物体看做是被一个圆球包裹起来的,然后通过判断鼠标在圆球上移动的位置来旋转那个圆球。这里仅用当场景中只有一个居中物体的情况来讲述。首先我们需要定义一些... 阅读全文
摘要:
从10号开始做这个东西,是一边学习一边做的,学了DXUT框架、拾取技术(DX提供的、别人写的算法和用外接球模拟)先说一下还要改进的地方:1、无论先点哪一个方块,都按照程序设定的去转2、光照问题:转了之后变暗3、内存泄露(这个找了很久都没找到,我估计是DXUT框架的,汗)设计思路:1、渲染:设定27个世界矩阵,逐个渲染,用一个mesh,改变世界矩阵2、拾取:采用内接球,用外接球的话会有相交的部分,但... 阅读全文
摘要:
原文出处:http://mxdxm.javaeye.com/blog/550319Ctrl+Shift+空格键 / Ctrl+K,P: 参数信息 Ctrl+K,I: 快速信息 Ctrl+E,U / Ctrl+K,U: 取消选定注释内容 Ctrl+K,M: 生成方法存根 Ctrl+K,X: 插入代码段 Ctrl+K,S: 插入外侧代码 F12: 转到所调用过程或变量的定义 窗口快捷键 Ctrl+W,... 阅读全文
摘要:
在书上没有找到使用DXUT中的camera类来处理简单鼠标事件的内容,在网上找到了,分享一下,只要简单几步就可以了,如果要处理复杂的鼠标响应事件,就自己写MouseProc( ... ),然后调用相应注册函数void DXUTSetCallbackMouse(... ),下面的数处理鼠标转换视角和旋转物体等事件有些camera类是在DXUTMisc.h中定义的,有些是在DXUTCamera.h中定... 阅读全文