??xml version="1.0" encoding="utf-8" standalone="yes"?>一本久道久久综合狠狠躁AV,久久久综合香蕉尹人综合网,国产精品激情综合久久 http://www.shnenglu.com/shanoa/category/11010.html其实我更爱姐?.. zh-cn Sun, 30 Jan 2011 20:38:32 GMT Sun, 30 Jan 2011 20:38:32 GMT 60 boost的bjam~译指o http://www.shnenglu.com/shanoa/archive/2011/01/30/139605.html酿妹?/dc:creator>酿妹?/author>Sun, 30 Jan 2011 01:34:00 GMT http://www.shnenglu.com/shanoa/archive/2011/01/30/139605.html http://www.shnenglu.com/shanoa/comments/139605.html http://www.shnenglu.com/shanoa/archive/2011/01/30/139605.html#Feedback 0 http://www.shnenglu.com/shanoa/comments/commentRss/139605.html http://www.shnenglu.com/shanoa/services/trackbacks/139605.html 前面必须使用到的Q类g面的指o F:\sdk\boost>bjam --link=static --threading=multi --runtime-link=shared debug release stage 后面需要选择~译器和要编译的?br>--toolset=msvc-9.0 --with-date_time --with-thread...... ]]> OGRE与MFC的文件系l冲H问?/title> http://www.shnenglu.com/shanoa/archive/2010/12/29/137693.html酿妹?/dc:creator>酿妹?/author>Wed, 29 Dec 2010 12:49:00 GMT http://www.shnenglu.com/shanoa/archive/2010/12/29/137693.html http://www.shnenglu.com/shanoa/comments/137693.html http://www.shnenglu.com/shanoa/archive/2010/12/29/137693.html#Feedback 5 http://www.shnenglu.com/shanoa/comments/commentRss/137693.html http://www.shnenglu.com/shanoa/services/trackbacks/137693.html q两个东西在一起问题真呀么多......前些日子才写的一个注意事的随笔Q这回又有问题需要记录,好吧Q开新文写?br>问题Q由于项目的复杂度,问题的表C原因其实相差十万八千里?br>原因QMFC在打开和保持文件后Q即打开CFileDialog对话框后Q,׃修改q程的当前目录,是SetCurrentDirectoy()Q导致OGRE里那些用相对路径做Location的资源目录下的文件全部无法读取(其实我觉得OGRE应该把这些相对目录在d文g的时候换成绝对目录)。具体就是openResource()中调用stat()出错Q文件系l中找不到指定文件?br>解决Ҏ(gu)Q在合适的地方调用SetCurrentDirectoy()把进E当前目录设|回q程工作目录?.....
于是又是一下午+半个晚上的调试时?.....
]]>备忘随笔pd2Q内存错?/title> http://www.shnenglu.com/shanoa/archive/2010/12/23/137336.html酿妹?/dc:creator>酿妹?/author>Thu, 23 Dec 2010 15:41:00 GMT http://www.shnenglu.com/shanoa/archive/2010/12/23/137336.html http://www.shnenglu.com/shanoa/comments/137336.html http://www.shnenglu.com/shanoa/archive/2010/12/23/137336.html#Feedback 3 http://www.shnenglu.com/shanoa/comments/commentRss/137336.html http://www.shnenglu.com/shanoa/services/trackbacks/137336.html 《备忘随W系?QMFC与OGRE联姻注意事项?/strong>之后Q再记录一下内存错误,l过无数ơ莫名其妙的内存问题之后Q发C些找不着北的内存Crash问题出现的原因都很荒谬,所以本主要例举一下近期出现的一些怪异内存问题和让人啼W皆非的原因所在?br>问题1Q?/strong>~译器在~译那些讉K成员变量的代码时错了相对于this指针的偏Ud节数Q赋值给下面一个变量时Q却修改了上面一个变量的倹{?br>原因Q与我共事的某位大仙׃L使用l构体传递网l包Q所以在某头文g里用#pragma pack(1)包括住了整个头文Ӟ一不小心把#include "其他头文?那些行也l包括了q去Q其中不乏Windows.h stl云云...... 解决办法Q当焉个啥......?pragma pack(1)的位|往下去几行Q还是细心点?..费了整整一天调试?br>问题2Q?/strong>从网l另一端机器发q来一个结构体Q分别接收一个结构体中的多个数据成员和一ơ性接收整个结构体取出的数据不同?br>原因Q这是个?的情形,两个相同的结构体分别在不同的头文件中Q且一个有#pragma pack(1)Q一个没有?br>解决办法Q如果要用结构体传递网l包Q还是共用头文g?..... 其实......很多内存问题很不好描qͼ我也不经常出现如上那Ll的问题Q所以下面我q是说一个最常见的内存问题(0x.....地址讉K冲突Q和原因吧: “0x.....地址讉K冲突”q个Crash基本上每个h都遇刎ͼ而且l常遇到Q但是大部分都很Ҏ(gu)解决。判断问题的原因可以看这几点Q?br>原因1Q如?x....q个值很,一般就?大一些,而且是在讉K某对象中的数据成员时出错的,那么q基本都是因对象指针为空Q你用了I对象指针调用了代码?br>原因2Q如?x...值同样很,但是q在访问某对象中的数据成员时出错,而是调用某函数那一行时出错的,那么q个函数十有八九(ji)是个虚函敎ͼ如果我说中的话,那原因应该如前面的原?相同Q只是这回是d虚函数表时就崩了?br>原因3Q如?x...值类似是0xcdcdcdcd?xeeeccc或者与q相q的敎ͼ且同h在访问数据成员或调用虚函数的时候出的问题,那么q就是个野指针问题了,释放了就别再用啊?br>原因4Q内存越界,q个对程序造成的麻烦比Mȝ都要大,但是问题q不隐蔽Q记得ؓ每个cȝ数据成员q行必要的初始化?br>原因5Q用了memset或ZeroMemory清空一些对象或对象数组。特别是对象数组Q很Ҏ(gu)让h忽略q个问题。有些程序员会觉得某对象里都是可以这hI的数据成员Q所以便q样做了Q但是往往虚函数表指针会被忽略Q这个指针绝对不能一赯清空的?br>ȝQ不要让表达索引的整形在初始化后是个未知|不要让指针没有在初始化时被赋0|不要不检查指针的值就拿它讉K成员函数和成员数据;不要重复释放指针所指对象;不要使用释放后和未初始化的内存数据;可以的话使用指针Q释放指针所指地址后,为指针赋0|只有在完全是内部cd构成且没有多态的cd对象上用memset为对象赋倹{?br>
]]> 备忘随笔pd1QMFC与OGRE联姻注意事项 http://www.shnenglu.com/shanoa/archive/2010/12/23/137249.html酿妹?/dc:creator>酿妹?/author>Wed, 22 Dec 2010 17:39:00 GMT http://www.shnenglu.com/shanoa/archive/2010/12/23/137249.html http://www.shnenglu.com/shanoa/comments/137249.html http://www.shnenglu.com/shanoa/archive/2010/12/23/137249.html#Feedback 5 http://www.shnenglu.com/shanoa/comments/commentRss/137249.html http://www.shnenglu.com/shanoa/services/trackbacks/137249.html 本文记录最q发现的一?MFC ?OGRE1.7.2版本 联姻的注意事:问题1Q?/strong>创徏Ogre的CViewH口后,无法截获鼠标点击和移动信息,只能获取鼠标滚轮信息?br>原因及解x案:传递CViewH口句柄Ӟ请一定用externedWindowHandle的属性keyQ切C要用parentWindowHandleQ因为parentWindowHandle是让CView成ؓ渲染H口的父H口Q鼠标键盘消息都不会路由到CView上,而是在渲染窗口里被截P而externedWindowHandle是让CViewH口本n成ؓ渲染H口Q所以CView才能正常截获到输入消息?br>问题2Q?/strong>当解决问?之后Q发C用externedWindowHandlel制出的H口很小Q而用parentWindowHandle时则正常 原因及解x案:注意l承CView::OnSize()函数响应WM_SIZE消息Q但请切讎ͼ千万别在OnSize中调用Ogre::RenderWindow::resize()函数Q这会导致OnSize()函数的递归回调Q因为Ogre::RenderWindow::resize()函数中会调用AdjustWindow()和SetWindowPos()函数Q这会导致发送WM_SIZE消息q羃?yu)窗口,从而导致问题的发生?br>问题3Q?/strong>如何解决H口重置大小的问?br>解决Ҏ(gu)Q在OnSize()?span style="COLOR: red">不能调用 Ogre::RenderWindow::resize()函数Q?strong style="COLOR: red">应该调用 Ogre::RenderWindow::windowMovedOrResized()函数Q通知RenderWindow在渲染前重新讄Viewport的宽高比例?br>问题4Q?/strong>怎样保L染@?br>分析Q上|看了一些相关的解决Ҏ(gu)Q发现大多用WM_TIMER消息来维持OGRE的主渲染循环Q这应该是下下策的方案了?.....当然q有其他的实现方案,譬如开另一个线E,q个Ҏ(gu)q是可行的,但是L些不对味Q因为渲染明明应该在ȝE中才是最x案。于是我q了一下MFC闲下来的时候都q了些什么,最后发C以下解决Ҏ(gu)Q应该算是很不错但ƈ不难的解军_法了Qؓ什么没见网上有人提供这LҎ(gu)让我很不理解Q窝着藏着也得不到半点好处Q?br>解决Ҏ(gu)Q用空闲回调。该回调是需要承CWinApp::OnIdle()函数Q好像是叫这个,反正肯定带Idleq个单词Q,当主U程中的消息循环没有取到消息Ӟ调用PeekMessage()没有获取到消息)Q就会去调用q个函数Q于?.....在q个函数里调用绘制一帧吧QOgre::RenderWindow::update()Q另外有动画的话q需要调用Ogre::Root::_fireFrameRenderingQueued()Q因为动L新在q里。如果是惌所有渲染对象都更新一帧的话,直接调用Ogre::Root::renderOneFrame()吧?br> 解决Ҏ(gu)不一定最好,也不一定适合你的情况Q但愿能微薄之力,也是作ؓ我个人的备忘吧?
]]> 用cmake生成ogre1.7rc的项目文Ӟ哇擦?..... http://www.shnenglu.com/shanoa/archive/2010/10/12/129636.html酿妹?/dc:creator>酿妹?/author>Tue, 12 Oct 2010 10:59:00 GMT http://www.shnenglu.com/shanoa/archive/2010/10/12/129636.html http://www.shnenglu.com/shanoa/comments/129636.html http://www.shnenglu.com/shanoa/archive/2010/10/12/129636.html#Feedback 0 http://www.shnenglu.com/shanoa/comments/commentRss/129636.html http://www.shnenglu.com/shanoa/services/trackbacks/129636.html ]]> 析构q程中内存相关错误的l大多数原因 http://www.shnenglu.com/shanoa/archive/2010/07/01/119064.html酿妹?/dc:creator>酿妹?/author>Thu, 01 Jul 2010 07:47:00 GMT http://www.shnenglu.com/shanoa/archive/2010/07/01/119064.html http://www.shnenglu.com/shanoa/comments/119064.html http://www.shnenglu.com/shanoa/archive/2010/07/01/119064.html#Feedback 10 http://www.shnenglu.com/shanoa/comments/commentRss/119064.html http://www.shnenglu.com/shanoa/services/trackbacks/119064.html 今天记录一下长久以来屡ơ犯的错Q每ơ都是换一U方法编码来l过q个问题实现功能的,因ؓq个问题太过隐蔽Q导致今天才发现其中真正的原?..下面q行问题描述Q?br>
1 std::map < std:: string , Value > keyValue; // 在函数内部分配的堆栈对象Q局部变量) 2 ReadData(keyValue); // 从dll中导出的函数 3 keyValue.clear(); // delete中出现assert异常
W一行是在应用程序中的堆栈中分配的内存空间?br>W二行是我自己写的dll库,用来d一些数据加入到keyValue中?br>W三行是清空keyValueQ其实如果不写这一行的话,keyValue也会在函数结时清空Q到那时同样会出现错误?br>q一切乍一看没啥问题,keyValue是局部变量,Z么局部变量的释放会出现异帔R误呢Q这是因为第二行ReadData的缘故。ReadData的逻辑在另外一个可执行模块中,在其中分配的内存I间不一定与当前模块在同一个堆区?br>我们知道Qstd::map是一个树l构的容器,我在ReadData内部往keyValue中添加了数据QkeyValue中会在堆Z分配树节点,而这个节点将会在当前模块在keyValue的析构中被释放。也是_我无意中在dll模块中分配了堆空_又无意中在exe模块中企N放该I间Q这L行ؓD错误是不ؓ怪的?br>时刻牢记Q在一个模块中分配和释攑一块内存区域,警惕你所看不见的内存分配和释放?/strong>
]]> 异常处理的可恉?/title> http://www.shnenglu.com/shanoa/archive/2009/08/02/91967.html酿妹?/dc:creator>酿妹?/author>Sun, 02 Aug 2009 09:12:00 GMT http://www.shnenglu.com/shanoa/archive/2009/08/02/91967.html http://www.shnenglu.com/shanoa/comments/91967.html http://www.shnenglu.com/shanoa/archive/2009/08/02/91967.html#Feedback 1 http://www.shnenglu.com/shanoa/comments/commentRss/91967.html http://www.shnenglu.com/shanoa/services/trackbacks/91967.html
try { moeutil::simple_pool spool( 32 ); void * p1 = spool.malloc( 15 ); void * p2 = spool.malloc( 10 , 2 ); void * p3 = spool.malloc( 15 , 4 ); void * p4 = spool.malloc( 7 ); void * p5 = spool.malloc( 7 ); void * p6 = spool.malloc( 70 ); // std::cout<<p1<<'\n'<<p2<<'\n'<<p3<<'\n'<<p4<<'\n'<<p5<<'\n'<<p6<<std::endl; spool.free(p1); spool.free(reinterpret_cast < char *> (p2) + 2 ); spool.free(p3); spool.free(p4); spool.free(p5); spool.free(p6); } catch (moeutil::Exception & e) { std::cout << e.what() << std::endl; }
q是一个简易的内存池类Q其中simple_pool的析构函C抛出异常Q然后free函数也会抛出异常。析构函数可以检是否有内存泄漏Q而free函数是检到无效的传入指针时会抛出异常。析构抛出异常是没问题的Q但是free抛出异常的时候问题就来了Q当free抛出异常Ӟ׃会脱try块,所以spool也会被析构,q样׃陷入ȝQ由于没有全部freeQ所以析构本w也会抛出异常,D了类g异常q代的情c也是_在throw一个异常的q程中又一ơ触发了异常。于是windowspȝ的debug error对话框出CQ而且是出现在throw那一行?br>此随W用于提醒自己勿犯第二次Q?
]]> VC~译器中的一些编译时命o备忘 http://www.shnenglu.com/shanoa/archive/2009/07/30/91730.html酿妹?/dc:creator>酿妹?/author>Thu, 30 Jul 2009 10:00:00 GMT http://www.shnenglu.com/shanoa/archive/2009/07/30/91730.html http://www.shnenglu.com/shanoa/comments/91730.html http://www.shnenglu.com/shanoa/archive/2009/07/30/91730.html#Feedback 0 http://www.shnenglu.com/shanoa/comments/commentRss/91730.html http://www.shnenglu.com/shanoa/services/trackbacks/91730.html
// 加蝲静态库 #pragma comment(lib, " 路径+LIB库名 " ) // 止1221可?/span>#pragma warning(disable: 1221 ) // 导入q加载DLL exe之类的二q制动态库 #import " 路径+二进制库?/span>" // ClassNamecM的s_Data静态成员变量定义在头文件中旉止重定义 __declspec(selectany) int ClassName::s_Data = 0 ; // 当用户用void func()函数Ӟ~译器将作出警告Qƈ昄“不推荐用该函数”字样 __declspec(deprecated( " 不推荐用该函数 " )) void func();
]]> 记录一下C++标准感(zhn)?/title> http://www.shnenglu.com/shanoa/archive/2009/07/29/91647.html酿妹?/dc:creator>酿妹?/author>Wed, 29 Jul 2009 15:46:00 GMT http://www.shnenglu.com/shanoa/archive/2009/07/29/91647.html http://www.shnenglu.com/shanoa/comments/91647.html http://www.shnenglu.com/shanoa/archive/2009/07/29/91647.html#Feedback 2 http://www.shnenglu.com/shanoa/comments/commentRss/91647.html http://www.shnenglu.com/shanoa/services/trackbacks/91647.html 今天l于完成了自q日志库核心的几个cd法Q折腾了怹Q感觉安全性很好,一些多U程的死锁问题已l逐个排除了。由于需要跟C++标准库的输入输出共事,所以么ȝ自认为理解了C++标准的一些特性,C来以供备忘?br> 首先是文件流Q关于该的问题Q要扯就扯远了,主要说一说std::wofstream的问题。不要被q个w骗了Q其实它输出到文件上的依然还是那么回事,没有丝毫的变化。如果你是想输出Unicode到文本文件中Q那么你最好是用ios::binary模式Q然后一股脑的倒入文g中,如果要是使用<<重蝲W号的话Q输出到文g中的跟std::ofstream没区别,而且中文q无法输出。如果你遇见中文无法输出的问题,恩,可以调用std::wofstream::imbue()Ҏ(gu)Q具体也是一行:ofs.imbue(std::locale("chs"));搞定?br>我想QC++标准库ƈ不支持Unicode~码Q而是l字W地域化的编码方式,中文的可能也是GBK吧,听说C++0x标准会纳入Unicode~码支持Q如果是q样的话q心多了?br> 然后q有个不省心的地方就是流的streambuf中的~冲大小了,我发玎ͼfstream中的写缓冲居然一直是0啊,q个很头疼了,需要给文g指定缓冲的大小?/p>
]]> DLL的共享测?/title> http://www.shnenglu.com/shanoa/archive/2009/06/27/88666.html酿妹?/dc:creator>酿妹?/author>Sat, 27 Jun 2009 15:04:00 GMT http://www.shnenglu.com/shanoa/archive/2009/06/27/88666.html http://www.shnenglu.com/shanoa/comments/88666.html http://www.shnenglu.com/shanoa/archive/2009/06/27/88666.html#Feedback 0 http://www.shnenglu.com/shanoa/comments/commentRss/88666.html http://www.shnenglu.com/shanoa/services/trackbacks/88666.html 当一个进E调用LoadLibrary、LoadLibraryEx以及FreeLibraryӞDllMain会被调用Q从DllMain的入口函数的W二个参数可以得知是加蝲q是释放。LoadLibraryEx的flag参数传入DONT_RESOLVE_DLL_REFERENCES可以跌DllMain的调用,q在很多时候是有用的?br>当一个进E在调用LoadLibrary后又启动了线E,则每启动一个线E,׃调用一ơDllMainQ同样可以从DllMain的第二个参数的值来区分调用时由q程引v的还是由U程引v的。第二个参数的g般有4U,如下Q?br> DLL_PROCESS_ATTACH DLL_PROCESS_DETACH DLL_THREAD_ATTACH DLL_THREAD_DETACH 不用解释也能看得出来分别是表CZ么意义了Q通过q个可以选择性的对DLL中的数据q行初始化?br>如果是两个进E同时调用一个DLL的话Q数据是不会׃n的,除非你设|了segؓ׃nQ具体不同的~译器会有不同的讄Ҏ(gu)。两个进E对同一个DLL的调用计C是分开的,q让我很攑ֿ了,之前一直害怕的冲突问题释然?br> 当一个进E去调用一个DLLԌ而甲又在初始化的时候调用了DLL乙,q程通过甲的函数来访问了DLL乙,同时自己也亲自调用了DLL乙ƈ取出和更改了数据。这L情况下,DLL乙的引用计数是共享的Q数据也是共享的Q加载和释放都很安全Q之前担心DLL乙中的单件会被重复调用的情况也不可能存在了?
]]> MySQL的备忘录 http://www.shnenglu.com/shanoa/archive/2009/06/26/88602.html酿妹?/dc:creator>酿妹?/author>Fri, 26 Jun 2009 13:30:00 GMT http://www.shnenglu.com/shanoa/archive/2009/06/26/88602.html http://www.shnenglu.com/shanoa/comments/88602.html http://www.shnenglu.com/shanoa/archive/2009/06/26/88602.html#Feedback 0 http://www.shnenglu.com/shanoa/comments/commentRss/88602.html http://www.shnenglu.com/shanoa/services/trackbacks/88602.html q入后输?show databases命o可以看到所有的数据库了?br>然后是新用户的问题,如果你想d一个新的用P有很下列三种Ҏ(gu)Q?br>1、直接在mysql数据库中的user表里直接insertQ但是很ȝ 2、用GRANT [权限] ON *.* TO [username]@[客户端地址] identified by [password] q样的命令,具体可以看文?br>3、用CREATE USER [用户名] q样的命令创建用?br>q里要注意的是,W二U方法创建用L话,必须带有密码Q如果你惛_建无密码用户的话Q则必须用第3U方法?br>最后就是给用户权限的问题,一般都使用GRANT语句Q具体可参考文档,不过你也可以直接对db表直接进行修改和dQ只要你不怕麻烦?
]]>
ŮƷþþþ |
þþþۺĻ |
ҹþþþþýӰ
|
99þѹۺϾƷ |
þùƷ99 |
99þһ |
þۺɫ |
þѵľƷV |
˾þô߽Ʒ |
ݺɫþۺѿ
|
ձձȾþþƷ |
ݺɫۺվþþþþþø |
þҹɫƷվ |
ƷȾþþø |
ھƷþþþӰԺ²
|
97þþƷһ |
þۺ97ɫֱ |
þþþƷ |
ŷ˼Ծþ |
þþƷŷƬ |
þ99Ʒþþþþhb
|
þseƷһ |
þƷa |
˾Ʒһþ |
Ʒ18þþþþvr |
þֻ⾫Ʒ99 |
þþþŮۺ |
þþƷһ |
99þĻ |
99þ99þþþƷ |
˾þĻ |
þþþAVƬ |
ĻhdþþƷ |
þþžƷ |
ձһþ |
þþƷav岻 |
þˬˬˬ
|
Ʒһþ |
ƷVIDEOSSEXþ÷ |
Ʒþ |
Ʒþþþ |