CR的代码文本

all for learning about the world
  订阅 订阅  :: 管理
上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页

2010年12月21日

摘要: 链接(linking)就是将不同部分的代码和数据收集和组合成为一个单一文件的过程,这个文件可被加载(或被拷贝)到存储器并执行。链接可以执行于编译时(compile time),也就是在源代码被翻译成机器代码时;也可以执行于加载时(load time),也就是在程序被加载其(loader)加载到存储器并执行时;甚至执行于运行时(run time),由应用程序来执行。在早期的计算机系统中,链接是手动执行的,在现代系统中,链接是由链接器(linker)的程序自动执行的。------------------main.c ↓ 预处理器cppmain.i ↓ 编译器cclmain.s ↓ 汇编器asmai 阅读全文

posted @ 2010-12-21 16:12 mumuliang 阅读(437) 评论(0) 推荐(0) 编辑

2010年12月16日

摘要: 主要是解释这俩同时存在的意义:const char* c_str() const {return m_str;};char* c_str() {return m_str;};解释在这里。嗷嗷的给力啊!2011-2-1 update在c++的设计与演化那本书里边,有讲这个问题,貌似也是为了兼容C。改天深究。 阅读全文

posted @ 2010-12-16 11:54 mumuliang 阅读(203) 评论(0) 推荐(0) 编辑

摘要: Tools-Options-Text Editor-C/C++-Formatting- Miscellaneous-Enumerate Comment Tasks。 阅读全文

posted @ 2010-12-16 10:09 mumuliang 阅读(1000) 评论(2) 推荐(0) 编辑

2010年12月13日

摘要: 环境变量如果嵌套层数过多,容易被系统遗弃。情景:用OSGVER存放osg版本;OSGDIR是由其他路径和OSGVER组合成的路径;另外由OSGBIN存放运行时库dll文件所在目录;并且已经将OSGBIN加入了path。结果max加载osgexp时提示找不到入口,cmd下使用set命令查看path,发现osgbin未被正确解析。重启之后osgbin被识别为osgdir的组合量,仍然无法完全识别。没有耐心再重启,直接删除OSGBIN,用OSGDIR组合成bin目录加入path,此时cmd set查看,立刻正确解析了。运行max,osgexp顺利加载了。虽然某些情况下修改环境变量之后不用重启,但也有 阅读全文

posted @ 2010-12-13 17:35 mumuliang 阅读(395) 评论(0) 推荐(0) 编辑

2010年12月12日

摘要: win2003r2+vs2010上的x86项目;转移到win7+vs2010环境下出现如题问题貌似项目配置问题,但何处未知。遂用makelist重新生成sln。存疑。 阅读全文

posted @ 2010-12-12 22:37 mumuliang 阅读(3765) 评论(0) 推荐(0) 编辑

2010年12月3日

摘要: 长达30分钟的3D实时动画没什么是吧,但只有64K呢?farbrausch就是神一般的存在此处是信徒们搜集的作品列表 阅读全文

posted @ 2010-12-03 13:39 mumuliang 阅读(1541) 评论(0) 推荐(0) 编辑

摘要: 图形学的书籍常常都很厚而且因谨慎于各种概念而咬文嚼字理解不易 这里有本讲义非常好,精炼,而且容易理解。 是基于那本著名的《交互式计算机图形学》 有兴趣的话配合教材,他日神功定成! 链接在这里(update 2018.4.12 链接内已经没有讲义了),内配OpenGL资源的相关链接,非常齐备。 阅读全文

posted @ 2010-12-03 01:08 mumuliang 阅读(615) 评论(0) 推荐(0) 编辑

2010年12月1日

摘要: 纹理坐标的实例代码1Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<Windows.h>#include<gl/glut.h>#defineImageWidth64#defineImageHeight64GLu... 阅读全文

posted @ 2010-12-01 14:10 mumuliang 阅读(454) 评论(0) 推荐(0) 编辑

摘要: 虚拟图形的真实感是通过其表面的颜色和明暗来表现的。一个物体表面呈现的颜色,是由面向视线方向辐射的光能决定。图形学中用一个同时包含光能大小和方向的物理量,即光亮度(luminance)或光强(intensity of light),来描述物体表面的辐射光Emitted(max中的自发光),最终呈现的颜色是使用该物理量在光照模型中经过计算得到的。光照模型要考虑的问题包括: 1)物体表面的反射光 2)周... 阅读全文

posted @ 2010-12-01 12:54 mumuliang 阅读(420) 评论(0) 推荐(0) 编辑

摘要: 齐次的字面意思就是次数相等,也就是代数式或方程式中每一项的指数的和都是同一个值。(你或许需要:初中数学恶补链接)(你或许还需要:一本大全的数学手册)初等代数中基本上没有包含“齐次”二字的专有名词。“齐次方程”和 “齐次多项式”分别是微积分和线性代数中的内容。在图形学中,齐次坐标就是用n+1维向量来表达n维向量的方法。从最终结果... 阅读全文

posted @ 2010-12-01 11:37 mumuliang 阅读(366) 评论(0) 推荐(0) 编辑

2010年11月30日

摘要: 否则会出现如下2个错误 error C2039: “back_inserter”: 不是“std”的成员 error C3861: “back_inserter”: 找不到标识符之前编译虽然知道这两个错误的解决方法,但不记得文件,于是傻傻的先编译再根据出错信息查找错误文件其实,只需要ctrl F全解决方案查找back_inserter就可以了-_-哦,忘了,最重要的一步在找到的文件头部添加 #include <iterator>2011/06/01 update另有ReaderWriterPNG.cpp中的png_set_gray_1_2_4_to_8需更改为png_set_exp 阅读全文

posted @ 2010-11-30 21:42 mumuliang 阅读(1027) 评论(0) 推荐(1) 编辑

摘要: 解压 VS2010安装目录/Sample/2052/VC2010Sample.zip在得到的C++文件夹内 MFC/ole有一个TstCon项目,即ActiveX控件测试容器的源码然后工具 ->外部工具,添加。 阅读全文

posted @ 2010-11-30 11:29 mumuliang 阅读(2287) 评论(4) 推荐(1) 编辑

2010年11月29日

摘要: OpenGL是OpenGL是一个操纵硬件的软件接口包含大约250个函数(GLU中50个)没有执行窗口任务的函数没有获取用户输入的函数没有描述高级三维模型例如汽车/人等的高级函数只有描述几何图元的函数(点/直线/多边形)OpenGL实用库(GLU)提供了高级特性(二次曲面,NURBS曲线,曲线)渲染,指计算机根据模型创建图像。模型,是有几何图元(点/直线/多边形)构成的。几何图元,由顶点指定。ver... 阅读全文

posted @ 2010-11-29 18:25 mumuliang 阅读(2558) 评论(0) 推荐(0) 编辑

摘要: 缺乏图形知识基本所有疑问和困惑最终都归咎到了这一点。 阅读全文

posted @ 2010-11-29 12:46 mumuliang 阅读(208) 评论(0) 推荐(0) 编辑

2010年11月25日

摘要: 因为虚函数/继承等等造成的C++的多态特性,使得C++程序在编译时没有办法确认每个对象的具体类型。与之对应的,就必然提供一个方法在运行时用来判断对象的具体类型,也就是RTTI,运行时类型标识符。RTTI的编译器本质是在虚函数表中偷偷隐藏了一个指针,这个指针指向一个数据结构,这个数据结构记录了该类的真实类型信息。也就是typ_info。因为这个指针是藏在虚函数表中的,显而易见的:所有和动态类型判定有... 阅读全文

posted @ 2010-11-25 12:58 mumuliang 阅读(389) 评论(0) 推荐(1) 编辑

2010年11月24日

摘要: C++的预处理器预处理器指令包括如下12个。#if #else #elif #endif #ifdef #ifndef #undef#error #line #pragma #include #define第一行7个就是控制语句,重点在后面5个。1. #defineCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->#definemacro-name char-sequence#define定义了一个标识符和一个字符... 阅读全文

posted @ 2010-11-24 18:45 mumuliang 阅读(752) 评论(2) 推荐(0) 编辑

摘要: 新建项目是将win32程序错误选择成控制台程序,而又使用了win32的winmain作为入口就会报这个错误,是指程序默认的入口函数错误。项目属性做如下修改即可:1)c/c++->预处理器中将_CONSOLE删除,添加_WINDOWS2)链接器->系统,将子系统修改为WINDOWS(/SUBSYSTEM:WINDOWS) 阅读全文

posted @ 2010-11-24 17:36 mumuliang 阅读(613) 评论(0) 推荐(0) 编辑

摘要: 用来保证该方法在程序运行期间的唯一性。无法通过继承重载。 阅读全文

posted @ 2010-11-24 12:37 mumuliang 阅读(226) 评论(0) 推荐(0) 编辑

摘要: 封装变化多用组合少用继承针对接口编程,不针对实现编程类应该对扩展开放,对修改关闭。 阅读全文

posted @ 2010-11-24 12:08 mumuliang 阅读(277) 评论(0) 推荐(0) 编辑

摘要: Observer C++实现Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<string>#include<iostream>#include<set>classIObserver;classISu... 阅读全文

posted @ 2010-11-24 10:13 mumuliang 阅读(486) 评论(0) 推荐(0) 编辑

摘要: 被调用的dll项目[代码]_declspec,Declare Specification,这个关键字可以理解为声明规范。它有许多用法,语法如下:[代码]配合dllexport和dllimport,分别表示导入和到导出dll接口函数。调用dll的项目 - 显式调用1)只需要dll文件2)在调用处用法如下代码Code highlighting produced by Actipro CodeHighl... 阅读全文

posted @ 2010-11-24 08:24 mumuliang 阅读(691) 评论(0) 推荐(1) 编辑

2010年11月23日

摘要: STL中的容器类分为两大类:顺序容器和关联容器。 顺序容器:vector,list,deque 关联容器:map,multimap,set和multiset两类容器都提供insert()用来插入元素,erase()从容器中删除元素。此外,顺序容器还提供push_back()和pop_back(),前者将元素添加到容器末端,后者从末端删除元素。对于顺序容器,尤其是vector而言,末端访问快速且廉价... 阅读全文

posted @ 2010-11-23 18:09 mumuliang 阅读(382) 评论(0) 推荐(0) 编辑

摘要: Visitor模式Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<iostream>#include<string>classemp;classboss;classvisitor{public:visitor(... 阅读全文

posted @ 2010-11-23 17:03 mumuliang 阅读(903) 评论(4) 推荐(0) 编辑

摘要: 寻址方式就是在汇编语言程序中寻找操作数或操作数地址的各种方法。8086提供了与操作数有关和与I/O端口地址有关的两类寻址方式。与操作数有关的寻址方式有七种,分别是:1)立即寻址,2)寄存器寻址,3)直接寻址,4)寄存器间接寻址,5)寄存器相对寻址,6)基址加变址寻址,7)相对基址加变址寻址,8)基址变址比例相对寻址;与I/0端口有关的寻址方式有1)直接端口寻址和2)间接端口寻址方式。1. 立即寻址... 阅读全文

posted @ 2010-11-23 09:04 mumuliang 阅读(2381) 评论(0) 推荐(0) 编辑

2010年11月22日

摘要: OSG程序设计教程 第七章CreateMovingNodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<osg/MatrixTransform>#include<osg/PositionAttitudeTransf... 阅读全文

posted @ 2010-11-22 17:14 mumuliang 阅读(2088) 评论(1) 推荐(0) 编辑

摘要: OSG程序设计教程,第六章漫游,矩阵操作器。CSouth.cpp稍有不同:1.将判断keydown值的多个if换成了switch。2.button拖动的旋转增量*0.0013.RIGHT/LEFT key的旋转增量*0.1CSouth.hCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHi... 阅读全文

posted @ 2010-11-22 16:29 mumuliang 阅读(3647) 评论(5) 推荐(2) 编辑

摘要: OSG程序设计教程 第五章 交互的Pick实例代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<iostream>#include<osgDB/ReadFile>#include<osgViewer/V... 阅读全文

posted @ 2010-11-22 12:43 mumuliang 阅读(1853) 评论(0) 推荐(0) 编辑

摘要: 原文地址:http://www.cublog.cn/u/18338/showart.php?id=113993在C语言中,假设我们有这样的一个函数:[代码]调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存... 阅读全文

posted @ 2010-11-22 11:28 mumuliang 阅读(423) 评论(0) 推荐(0) 编辑

摘要: 回调的本质就是利用函数指针,让客户程序员定义事件发生时的处理过程。[代码]   return 0 ;} 阅读全文

posted @ 2010-11-22 11:01 mumuliang 阅读(198) 评论(0) 推荐(0) 编辑

摘要: http://www.cppblog.com/oosky/archive/2006/01/21/2958.html接触过编程的人都知道,高级语言都能通过变量名来访问内存中的数据。那么这些变量在内存中是如何存放的呢?程序又是如何使用这些变量的呢?下面就会对此进行深入的讨论。下文中的C语言代码如没有特别声明,默认都使用VC编译的release版。首先,来了解一下 C 语言的变量是如何在内存分部的。C ... 阅读全文

posted @ 2010-11-22 10:07 mumuliang 阅读(239) 评论(0) 推荐(0) 编辑

摘要: 自:http://www.cppblog.com/oosky/archive/2006/01/21/2958.html一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, ... 阅读全文

posted @ 2010-11-22 09:38 mumuliang 阅读(319) 评论(0) 推荐(0) 编辑

摘要: 先Scale,再Rotate,最后Translate。 阅读全文

posted @ 2010-11-22 09:22 mumuliang 阅读(380) 评论(0) 推荐(0) 编辑

2010年11月21日

摘要: 症状:VS2010,使用OSG2.9.6库的程序,Debug配置运行时,会提示找不到读ive文件的插件;Release下正常。说明:1.依赖项中的lib库已经检查过是d和非d区分的。2.编译通过,include和lib目录正确。3.windows 2003 x64 r2 with sp24.VS2010,使用win32配置。5.osgversion 2.9.6代码如下:[代码]2010/10/21... 阅读全文

posted @ 2010-11-21 18:32 mumuliang 阅读(5457) 评论(2) 推荐(0) 编辑

摘要: 问题表现遇到了这么一个问题:用VC++2005开发的程序P,到了别的机器上却不能运行,提示“由于应用程序配置不正确,程序未能启动”。原因分析可能是缺乏C++ Runtime或C++ Runtime版本不正确引起。虽然都是VC8.0,开发机上跟踪程序线程,发现程序P调用了:C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e... 阅读全文

posted @ 2010-11-21 16:26 mumuliang 阅读(3207) 评论(0) 推荐(0) 编辑

摘要: 在Visual C++ 中,可以在监视窗口添加 $err,hr 一行来实时现实错误。调试过程中,该项相当于在每次调用API函数之后调用GetLastError函数。其值由两部分组成,一个是错误代码(十六进制),另一个是错误代码所对应的文本提示。该方法支持多语言。 阅读全文

posted @ 2010-11-21 12:05 mumuliang 阅读(1880) 评论(0) 推荐(0) 编辑

2010年11月19日

摘要: [代码]{//doanythinguwantherereturn0;}argc: 参数个数argv: 一个参数数组,argv[0]是程序本身的包含路径的完整文件名。osg::ArgumentParser类,管理main参数。 阅读全文

posted @ 2010-11-19 16:52 mumuliang 阅读(969) 评论(0) 推荐(0) 编辑

摘要: 计划任务列表,和由此产生的日志的快速链接。 阅读全文

posted @ 2010-11-19 13:48 mumuliang 阅读(714) 评论(0) 推荐(2) 编辑

2010年11月18日

摘要: 知道不容易,但让别人知道更难。而且花的时间也往往后者大于前者。日记和Blog的区别在于,后者写着写着就假定出一批读者来。前者无论如何都是给自己独乐乐的。嗯,坚定,要在Blog上写出日记的气势来。1.配置属性->常规里的项几乎都有宏与之对应。2.默认情况下链接器中的输出文件由配置属性->常规中的输出目录、目标文件名、扩展名组合决定,$(OutDir)$(TargetName)$(Targ... 阅读全文

posted @ 2010-11-18 17:39 mumuliang 阅读(18477) 评论(0) 推荐(0) 编辑

摘要: OSGEXP默认是动态连接的OSG库,和原有的OSG库发生了冲突。即,环境变量path中包含的osg库和,在3dsMax安装目录下OSGEXP安装的osg库不一致。就着本机环境重新编译exp。IParam。。。GetValue()出现几处参数不匹配的错误,捂眼蒙头修改声明,顺利完工。但max里导出工具的6个小图标都木有了。貌似看到一个长度为6的files数组是用GetValue类型不匹配的&... 阅读全文

posted @ 2010-11-18 16:24 mumuliang 阅读(1595) 评论(0) 推荐(0) 编辑

摘要: 反复检查了环境变量、osg的dll文件版本、CRT版本,但始终都在运行时提示c++异常,XX处的std::bad_alloc。解决:检查项目属性->链接->输入->附加依赖项中的各lib版本是否正确。若debug使用了非d版本的lib,或release使用了d版本的lib,就会出错。俺就是将debug的依赖项osgDBd.lib,误写成了osgDB.lib。好吧,其实不是手误,是... 阅读全文

posted @ 2010-11-18 09:21 mumuliang 阅读(1693) 评论(0) 推荐(1) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 下一页