??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品第一,精品一区二区三区在线观看,欧美亚洲综合久久http://www.aygfsteel.com/softgamer/softgamer 的痕q?/description>zh-cnFri, 20 Jun 2025 00:56:00 GMTFri, 20 Jun 2025 00:56:00 GMT60C++体会(x) -- ?rn)态数据成?/title><link>http://www.aygfsteel.com/softgamer/archive/2007/02/10/99097.html</link><dc:creator>softgamer</dc:creator><author>softgamer</author><pubDate>Sat, 10 Feb 2007 01:12:00 GMT</pubDate><guid>http://www.aygfsteel.com/softgamer/archive/2007/02/10/99097.html</guid><wfw:comment>http://www.aygfsteel.com/softgamer/comments/99097.html</wfw:comment><comments>http://www.aygfsteel.com/softgamer/archive/2007/02/10/99097.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/softgamer/comments/commentRss/99097.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/softgamer/services/trackbacks/99097.html</trackback:ping><description><![CDATA[ <font color="#0000ff" face="Courier New" size="4"> (tng) (tng) ?rn)态数据成员很像是全局变量Q但static数据成员有类作用域,?rn)态成员可以是public,private或protected.<br /> (tng) (tng) ?rn)态数据成员在文g范围?font color="#ff3300">必须q行一ơ初始化</font>。类的public?rn)态成员可以通过cȝM对象讉KQ也可以用二元作用域分LW通过cdq行讉K?font color="#ff3300">cȝprivate和protected ?rn)态成员必通过cȝpublic成员函数或类的友元访?/font>?font color="#ff3300">即ɾcL有对象,但仍然有?rn)态成员。类没有对象Ӟ要想讉Kpublic?rn)态类成员Q只需在成员数据名前加上类名和二元作用域分辨符(::)</font>.<font color="#ff3300">要在cL有对象时讉Kprivate或protected ?rn)态类成员Q则需要提供一个public?rn)态成员函敎ͼq在调用函数时在函数名前面加上类名和二元作用域分辨符?/font><br /><br />#File Test.h<br />#ifndef TEST_H<br />#define TEST_H<br /><br />class Test<br />{<br /> (tng) (tng) public:<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Test( const char * , const char * );<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) ~Test();<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) const char *GetFstString() const;<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) const char *GetLstString() const;<br /><br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) <font color="#ff3300">static int GetCount();</font><br /><br /> (tng) private:<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) char * strFst;<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) char * strLst;<br /><br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) <font color="#ff3300">static int count; (tng) </font><br /><br />};<br /><br /><br />#endif<br />---------------------------------------------------------------------------------<br />#File Test.cpp<br />#include <iostream><br /><br />using std::cout;<br />using std::endl;<br /><br />#include <cstring><br />#include <cassert><br />#include "Test.h"<br /><br /><font color="#ff3300">int Test::count = 0;<br /><br />int Test::GetCount() { return count ; }</font><br /><br />Test::Test( const char * sFst, const char * sLst )<br />{<br /> (tng) (tng) strFst = new char[ strlen( sFst ) + 1 ];<br /> (tng) (tng) assert( strFst != 0 );<br /> (tng) (tng) strcpy( strFst, sFst );<br /> (tng) <br /> (tng) (tng) strLst = new char[ strlen( sLst ) + 1 ];<br /> (tng) (tng) assert( strLst != 0 );<br /> (tng) (tng) strcpy( strLst, sLst ); (tng) <br /><br /> (tng) (tng) count++; // inc static count<br /><br /> (tng) (tng) cout << " Test cons for " << strFst<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << " (tng) " << strLst << " called. " << endl;<br />}<br /> (tng)<br />Test::~Test()<br />{<br /> (tng) (tng) cout << " ~Test() called for " << strFst<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << " " << strLst << endl;<br /> (tng) (tng) delete [] strFst;<br /> (tng) (tng) delete [] strLst;<br /> (tng) (tng) count--;<br />}<br /><br />const char * Test::GetFstString() const<br />{<br /> (tng) (tng) (tng) return strFst;<br />}<br /><br />const char * Test::GetLstString() const<br />{<br /> (tng) (tng) (tng) return strLst;<br />}<br /><br />--------------------------------------------------------------------------------<br />#File: main.cpp<br />#include <iostream><br /><br />using std::cout;<br />using std::endl;<br /><br />#include "Test.h"<br /><br />int main()<br />{<br /> (tng) (tng) cout << "before cons is "<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << Test::GetCount() << endl; // use class name<br /><br /> (tng) (tng) Test *pTest1 = new Test( "FstTest1", "LstTest1" );<br /> (tng) (tng) Test *pTest2 = new Test( "FstTest2", "LstTest2" );<br /><br /> (tng) (tng) cout << "after cons is "<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << pTest1->GetCount(); (tng) //using instan<br /><br /> (tng) (tng) cout << "\n\nTest1: "<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << pTest1->GetFstString()<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << " " << pTest1->GetLstString()<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << "\nTest2:"<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << pTest2->GetFstString()<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << " " << pTest2->GetLstString() << "\n\n" << endl;<br /><br /> (tng) (tng) delete pTest1;<br /> (tng) (tng) pTest1 = 0;<br /> (tng) (tng) delete pTest2;<br /> (tng) (tng) pTest2 = 0;<br /><br /> (tng) (tng) cout << "num after deletion is "<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) << Test::GetCount() << endl;<br /><br /> (tng) (tng) return 0;<br /> (tng) (tng) (tng) (tng) (tng) (tng) <br />}<br />-------------------------------------------------------------------------------------------<br /><br />Result:<br />before cons is 0<br /> (tng)Test cons for FstTest1 (tng) LstTest1 called.<br /> (tng)Test cons for FstTest2 (tng) LstTest2 called.<br />after cons is 2<br /><br />Test1: FstTest1 LstTest1<br />Test2:FstTest2 LstTest2<br /><br /><br /> (tng)~Test() called for FstTest1 LstTest1<br /> (tng)~Test() called for FstTest2 LstTest2<br />num after deletion is 0<br /><br /> (tng) (tng) Testcd没有对象Ӟ仍然可以引用count成员Q但是只能通过调用?rn)态成员函数GetCount()完成.<br /> (tng) (tng) <font color="#ff3300">没有实例化的对象Q一定是用类名调用Test::GetCount(),如果有实例化的对象,则可以用pTest1->GetCount()<br />调用。我们公司明规定,所有静(rn)态成员函数只能调用类名句柄,不能调用对象句柄Q我觉得q样很好?/font><br /><br /> (tng) (tng) q有一点,如果成员函数不访问非?rn)态数据成员和成员函数Q可以将成员函数声明为静(rn)态,<font color="#ff3300">与非?rn)态成员函C同的是,?rn)态成员函数没有this指针Q因为静(rn)态类数据成员和成员函数是独立于类对象而存才的?/font><br /> (tng)<br /> (tng) (tng) 关于断言(assert) , assertcd在cassert头文件中定义。用于测试条件|注意assert不运行Q何析构函数即可中止程序执?<font color="#ff3300"> assert不一定要在调试完成后删除Q只需在程序文件开?通常可以在编译器选项中指?插入语句<br />#define NDEBUG</font><br /><br /></font> <img src ="http://www.aygfsteel.com/softgamer/aggbug/99097.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/softgamer/" target="_blank">softgamer</a> 2007-02-10 09:12 <a href="http://www.aygfsteel.com/softgamer/archive/2007/02/10/99097.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++体会(x) -- 初始化类的常量数据成?/title><link>http://www.aygfsteel.com/softgamer/archive/2007/02/09/99071.html</link><dc:creator>softgamer</dc:creator><author>softgamer</author><pubDate>Fri, 09 Feb 2007 14:19:00 GMT</pubDate><guid>http://www.aygfsteel.com/softgamer/archive/2007/02/09/99071.html</guid><wfw:comment>http://www.aygfsteel.com/softgamer/comments/99071.html</wfw:comment><comments>http://www.aygfsteel.com/softgamer/archive/2007/02/09/99071.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/softgamer/comments/commentRss/99071.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/softgamer/services/trackbacks/99071.html</trackback:ping><description><![CDATA[ <font face="Courier New" size="4">如果你想初始化一个类中的帔R数据成员Q只能用一U方法,在类的构造函数后加一?:",然后初始化那些常量数据成员,<br />以逗号分割?br /><br />#include <iostream><br /><br />using std::cout;<br />using std::endl;<br /><br />class Test <br />{<br /> (tng) public:<br /> (tng) (tng) (tng) Test(int i = 0, int j = 1 );<br /> (tng) (tng) (tng) void addon() { count += idx; }<br /> (tng) (tng) (tng) void print() const;<br /> (tng) private:<br /> (tng) (tng) (tng) int count;<br /> (tng) (tng) (tng) const int idx;<br /> (tng) (tng)  (tng)const int idy;<br />};<br /><br />Test::Test( int i, int j ) <br /> (tng) <b><font color="#ff3300">:idx( j, i ), idy( j, j )</font></b><br />{<br /> (tng) (tng) count = j;<br />}<br /><br />void Test::print() const<br />{<br /> (tng) (tng) cout << "count= " << count <br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) <<", idx = " << idx<br /> (tng) (tng)  (tng) (tng) (tng) (tng) <<", idy = " << idy<br /> (tng) (tng)  (tng) (tng) (tng) (tng) << endl;<br />}<br /><br />int main()<br />{<br /> (tng) (tng) (tng) Test Test1( 20, 7 );<br /> (tng) (tng) (tng) cout << "Before doing addon: ";<br /> (tng) (tng) (tng) Test1.print();<br /> (tng) (tng) (tng) for ( int k = 0; k < 3; k++ )<br /> (tng) (tng) (tng) {<br /> (tng) (tng) (tng) (tng) (tng) (tng) Test1.addon();<br /> (tng) (tng) (tng) (tng) (tng) (tng) cout << "After addon " << k + 1 << ":";<br /> (tng) (tng) (tng) (tng) (tng) (tng) Test1.print();<br /> (tng) (tng) (tng) } <br /> (tng) (tng) (tng) return 0;<br />}<br /><br />result:<br /><font color="#0000ff">Before doing addon: count= 7, idx = 20, idy = 7<br />After addon 1:count= 27, idx = 20, idy = 7<br />After addon 2:count= 47, idx = 20, idy = 7<br />After addon 3:count= 67, idx = 20, idy = 7</font><br /><br /></font> <img src ="http://www.aygfsteel.com/softgamer/aggbug/99071.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/softgamer/" target="_blank">softgamer</a> 2007-02-09 22:19 <a href="http://www.aygfsteel.com/softgamer/archive/2007/02/09/99071.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>向诸葛亮老师学习(fn)十堂?/title><link>http://www.aygfsteel.com/softgamer/archive/2007/02/07/98512.html</link><dc:creator>softgamer</dc:creator><author>softgamer</author><pubDate>Wed, 07 Feb 2007 02:37:00 GMT</pubDate><guid>http://www.aygfsteel.com/softgamer/archive/2007/02/07/98512.html</guid><wfw:comment>http://www.aygfsteel.com/softgamer/comments/98512.html</wfw:comment><comments>http://www.aygfsteel.com/softgamer/archive/2007/02/07/98512.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/softgamer/comments/commentRss/98512.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/softgamer/services/trackbacks/98512.html</trackback:ping><description><![CDATA[ <table style="table-layout: fixed;" border="0" cellpadding="0" cellspacing="0" height="868" width="886"> <tbody> <tr> <td> <font face="Courier New" size="4"> <span id="wmqeeuq" class="oblog_text"> <br /> (tng) (tng) (tng) (tng) 也发一灌水文章,它对我帮助很大。不是我写的Q是朋友发给我的。我也加?jin)自q一些理?br /><br /><span style="font-family: ?hu)?"> (tng) (tng) (tng) (tng) 诸葛?/span><span style="font-family: Times New Roman;" lang="EN-US">54</span><span style="font-family: ?hu)?">岁时写给?/span><span style="font-family: Times New Roman;" lang="EN-US">8</span><span style="font-family: ?hu)?">? 儿子诸葛ȝ《诫子书》,只用?jin)短短八十六字,但是对于为学做h有精而且具体的忠告。一千八癑֤q前的智慧,在今天的U技时代Q仍然有非常好的参考h(hun) 倹{以前听Q“真正的智慧Q可以超时I,历久常新。”初听不知所以,现在觉得所a甚是。让我们一?st1:personname w:st="on" productid="向诸葛亮">向诸葛亮</st1:personname>老师学习(fn)十堂课,在变局中安w立命,在逆境中找到力量?/span><span lang="EN-US"><br /></span><span style="font-family: ?hu)?">  <font color="#0000ff">《诫子书?/font></span><font color="#0000ff"><span lang="EN-US"><br /></span><span style="font-family: ?hu)?">  夫君子之行,靜以修nQ儉以養P非澹泊無以明志,非寧靜無以致遠。夫孔R靜也Q才須學也;非學無以廣才Q非志無以成學。怠慢則不能勵_,險躁則不能冶性。年與時馻I意與歲去Q遂成枯落,多不接世。?zhn)守窮廬,復何?qing)Q?br /></span></font><span style="font-family: Times New Roman;" lang="EN-US"><font color="#0000ff"> (tng)</font><br /></span><span style="font-family: ?hu)?"> <span style="color: red;"> W一课:(x)宁静(rn)的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “静(rn)以修w”、“非宁静(rn)无以致远”、“学静(rn)也”。诸葛亮忠告孩子宁静(rn)才能够修养n?j),静(rn)思反省。不能够?rn)下来,则不可以有效的计划未来,而且学习(fn)的首要条Ӟ是有宁?rn)的环境。现代h大多数终日忙,你是否应在忙׃?rn)下来,反思h生方向?<br /> (tng)  (tng) (tng) </span><span style="font-family: ?hu)?"><br /> (tng)  <span style="color: red;">W二课:(x)节P的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “P以养德”。诸葛亮忠告孩子要节俭,以培养自q徯。审慎理财,量入为出Q不但可以摆p债的困扰Q更可以q着U律的简朴生z,不会(x)成ؓ(f)物质的奴隶。在鼓励消费的文明社?x),你有没有惌节P的好处呢Q?br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?">  <span style="color: red;">W三课:(x)计划的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “非Ҏ(gu)无以明志”、“非宁静(rn)无以致远”。诸葛亮忠告孩子要计划h生,不要事事讲求名利Q才能够?jin)解自己的志向,要?rn)下来Q才能够l心(j)计划来。面Ҏ(gu)来,你有理想吗?你有使命感吗Q你有自q价D吗?<br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?">  <span style="color: red;">W四课:(x)学习(fn)的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “夫学须?rn)也”、“才d也”。诸葛亮忠告孩子宁静(rn)的环境对学习(fn)大有帮助Q当焉合专注的q静(rn)?j)境Q就更加事半功倍。诸葛亮不是天才论的信徒Q他怿才能是学?fn)的l果。你是没有全?j)全力的学?fn)Q你是否怿努力才有成就呢?<br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?"> <span style="color: red;"> W五课:(x)增值的力量</span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “非学无以广才”、“非志无以成学”。诸葛亮忠告孩子要增值先要立志,不愿意努力学?fn),׃能够增加自己的才qӀ但学习(fn)的过E中Q决?j)和毅力非常重要Q因为缺乏了(jin)意志力,׃(x)半途而废。你有没有想q,一鼓作气的人多Q坚持到底的人少的道理呢Q?br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?"> <span style="color: red;"> W六课:(x)速度的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “怠慢则不能励_䏀。诸葛亮忠告孩子凡事拖g׃能够快速的掌握要点。计机时代是十倍速的时代Q样样事情讲求效率,想不C千八癑֤q前的智慧,也一样不谋而合。快Z步,理想p实现。你有没有想q,有更多时间去修正?qing)改善,以达成你的h生目标呢Q?br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?">  <span style="color: red;">W七课:(x)性格的力?/span></span><span lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “险w则不能冶性”。诸葛亮忠告孩子太过急躁׃能够陶冶性情。心(j)理学家说Q“思想影响行ؓ(f)Q行为媄(jing)响习(fn)惯,?fn)惯影响性格Q性格影响命运。”诸葛亮明白生命中要作出U种qQ要qQ也要冶性。你要提升自己性格的品质吗Q?br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?">  <span style="color: red;">W八课:(x)旉的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “年与时驰”、“意与岁厠Z。诸葛亮忠告孩子时光飞逝,意志力又?x)随着旉消磨Q少壮不努力Q老大徒伤(zhn)Ԍ旉理是个C人的观念Q细?j)想一惻I旉不可以被理Q每天二十四时Q不多也不少Q惟有管理自己,善用每分每秒。请你想一惻I你有y跎岁月吗?<br /><br /></span><span lang="EN-US"></span><span style="font-family: ?hu)?">  <span style="color: red;">W九(ji)课:(x)惌的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  “遂成枯落”、“多不接世”、“?zhn)守穷庐”、“将复何?qing)”。诸葛亮忠告孩子时光飞逝,当自己变得和世界pQ才(zhn)叹y跎岁月Q也于事无补。要懂得居安思危Q才能够临危不ؕ。想象力比知识更有力量。你有没有从大处着惻I处着手,脚踏实地Q规划自q人生呢?</span><span lang="EN-US"><br /></span><span style="font-family: ?hu)?"><br /> <span style="color: red;"> W十课:(x)_的力?/span></span><span style="color: red;" lang="EN-US"><br /></span><span style="font-family: ?hu)?">  以上诸葛亮写l儿子的一信Q只用了(jin)短短八十六字Q精C递了(jin)具体的讯息。我怿_的表达源于清晰的思想Q长大论的内容Q容易o(h)人生厌,_沟通更有效果。你懂得a之有物地_沟通吗Q?/span><span lang="EN-US"><br /></span><span style="font-family: ?hu)?"><br />  从以上的十堂课之中,你能够找C点启发吗Q请你百忙之中静(rn)下来Q用下面的题目向你的人生提问Q在改变?sh)不断改善?/span><span lang="EN-US"><br /></span><span style="font-family: ?hu)?">  <font color="#ff3300">不要问:(x)自己得到些什么?应该问:(x)自己付出q什么?</font></span><font color="#ff3300"><span lang="EN-US"><br /></span><span style="font-family: ?hu)?">  不要问:(x)自己的地位如何?应该问:(x)自己的心(j)地如何?</span></font></span> </font> </td> </tr> </tbody> </table> <img src ="http://www.aygfsteel.com/softgamer/aggbug/98512.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/softgamer/" target="_blank">softgamer</a> 2007-02-07 10:37 <a href="http://www.aygfsteel.com/softgamer/archive/2007/02/07/98512.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>与管理器p --- 世纪弹蟩球(W二天)(j)http://www.aygfsteel.com/softgamer/archive/2007/02/06/98438.htmlsoftgamersoftgamerTue, 06 Feb 2007 14:15:00 GMThttp://www.aygfsteel.com/softgamer/archive/2007/02/06/98438.htmlhttp://www.aygfsteel.com/softgamer/comments/98438.htmlhttp://www.aygfsteel.com/softgamer/archive/2007/02/06/98438.html#Feedback0http://www.aygfsteel.com/softgamer/comments/commentRss/98438.htmlhttp://www.aygfsteel.com/softgamer/services/trackbacks/98438.html  (tng)构徏游戏Q其实就是构Z的管理器Q你的梦工场?/o:p>

 (tng)对于q款游戏Q我?x)设计一些管理器c,
 (tng)他们分别是:(x) ȝ理类Q?L新和渲染

 (tng)它的下面是:(x)

 (tng) (tng)  (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) 球理c?/font>Q负责小球的更新和渲?/o:p>

 (tng)  (tng)  (tng) (tng) (tng) (tng) (tng) (tng) (tng) 砖块理c?/font>Q?/o:p> 负责 砖块 的更新和渲染

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) 宝物理c?/font>Q?/o:p> 负责 宝物 的更新和渲染

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) 。。。。。。。。?br />

 (tng)

 (tng) 当ȝ理类更新或渲染时Q依ơ调用各个管理子cȝ更新或渲染,q样一些具体的东西可以通过同样的管理接口运作,而上层管理者也不用具体的管下如何q作?/font>
 (tng)其中的一些细节是:
 (tng)理c部?
 (tng) (tng) (tng) 举一个例子,对于不同cd的砖块来_(d)他们属于一个砖?/font> 基类Qƈp个砖?/span> 基类zQ创q属性,然后再向砖块理器注册,每增加一U类型的砖块向理者注册,当管理器创徏此种cd的砖块时Q实际就是调用这些子cȝ接口q创建它们?br /> (tng) (tng) q样Q我们就隐约看见?jin)一个公司的q作Q他们有ȝ理者,部门理者和员工Q管理者们是核?j)?/span> 员工是扩展部分,具体包括各种砖块?br /> (tng)
 (tng) 资源理部分Q?/font>
 (tng)  (tng) 很多朋友愿意把资源一ơ性蝲入,好处是,节省q行旉Q方便管理等。坏处是E序初始q行旉长,内存消耗太大,很显?dng)你不可能同时使用所有资源,一些不用的资源Q也ȝ在内存里Q等待调用,对于pȝ的有效性来Ԍ实在有些不划?br />
 (tng) (tng) 实时载入资源好处是内存(sh)用很有效Q但是频J读写硬盘,E序q行旉延迟H出QɽE序q行有时很不q诏。因此我们要具体情况具体分析Q要l资源分U,哪些一ơ性蝲入,哪些是实时读写?/span>

 (tng) (tng)

 (tng) 撞(g)部分,

 (tng) 目前使用q泛的是使用矩Ş框来q行_略的碰撞检?/span>

 (tng) 几种主要的碰?

 (tng) (tng) (tng) 球与^?/font>Q?按照角度Q速度Q加速度定出轨迹q动

 (tng) (tng) (tng) 球与砖?/font>Q?删除砖块Q重要的是从内存?sh)删除?j)Q?/span>

 (tng) (tng) (tng) 球与宝?/font>Q? 更改球的相兛_性, 删除宝物Q重要的是从内存?sh)删除?j)?/span>

 (tng) (tng) (tng) 球与墙?/font>Q? 按照角度Q速度Q加速度定出轨迹q动

 (tng) (tng) (tng) 砖块与砖?/font>Q?一些会(x) 按照角度Q速度Q加速度定出轨迹q动Q?一些不予理?/span>

 (tng) (tng)
 (tng) 撞理只用一个管理器完成Q只是要提供不同的接口和容器? (tng) ?/span>

 (tng) (g) 小球与砖块Q或宝物发生撞Ӟ可能是一对多Q也可能是多对多。这个可以在球理器内攄一个指针,用来指示当前正在判断的砖块。进行检时Q就把这个指针指向的砖块传递给砖块理器进行检。然后改变这个指针。直到指针回到容器头部?/span>

 (tng)

 (tng) 属性资源的理

 (tng) (tng) 当然全部由外部资源属性文件读取,包括Q小球,砖块Q宝物,背景{等各个斚w的属性。完全静(rn)态读取,好处是当物品被创建时Q读入属性|如果已经初始化,׃用属性倹{?/span>


 (tng) (tng) 目前M框架Q先惛_q里?大体是这样了(jin)Q具体的q有很多Q毕竟管理的资源多,逻辑也相对复杂?/span>


 (tng) (tng) (tng) (tng) (tng)



softgamer 2007-02-06 22:15 发表评论
]]>
今天的工作日志。。。?/title><link>http://www.aygfsteel.com/softgamer/archive/2007/02/06/98400.html</link><dc:creator>softgamer</dc:creator><author>softgamer</author><pubDate>Tue, 06 Feb 2007 09:59:00 GMT</pubDate><guid>http://www.aygfsteel.com/softgamer/archive/2007/02/06/98400.html</guid><wfw:comment>http://www.aygfsteel.com/softgamer/comments/98400.html</wfw:comment><comments>http://www.aygfsteel.com/softgamer/archive/2007/02/06/98400.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/softgamer/comments/commentRss/98400.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/softgamer/services/trackbacks/98400.html</trackback:ping><description><![CDATA[ <font color="#0000ff" face="Courier New"> (tng) (tng) ׃工作的关p,从今天v开始编写FPGA驱动E序Q? 使用的是NIOSII开发环境,以前总觉得FPGA很神U,今天看来和所有的C环境一L(fng)单,很快做Z(jin)HDLC中断的通讯驱动和SPI驱动E序Q真的要 感谢前辈们辛苦的工作。当然FPGAg的设计方面还是有很多值得回味的,但Y件方面实在是很烦(ch)然无呻I希望做FPGA的同志们别骂我,我只是今天才? FPGAQ是新的不能在新的新手了(jin)?br /> (tng) <br /> (tng) (tng) 现在开始画弹蟩球的UML框架?jin),不?x)很复杂,z一直是我追求的目标?/font> <img src ="http://www.aygfsteel.com/softgamer/aggbug/98400.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/softgamer/" target="_blank">softgamer</a> 2007-02-06 17:59 <a href="http://www.aygfsteel.com/softgamer/archive/2007/02/06/98400.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>把机械手装上 --- 世纪弹蟩球(W一?l)(j)http://www.aygfsteel.com/softgamer/archive/2007/02/05/98113.htmlsoftgamersoftgamerMon, 05 Feb 2007 13:27:00 GMThttp://www.aygfsteel.com/softgamer/archive/2007/02/05/98113.htmlhttp://www.aygfsteel.com/softgamer/comments/98113.htmlhttp://www.aygfsteel.com/softgamer/archive/2007/02/05/98113.html#Feedback0http://www.aygfsteel.com/softgamer/comments/commentRss/98113.htmlhttp://www.aygfsteel.com/softgamer/services/trackbacks/98113.html (tng) 玩了(jin)三个多小时游戏,居然没死一ơ,?/font>不住的在惻I快死吧,可是q了(jin)一养I又紧张的玩下M(jin)Q看来我的眼睛和手配合的愈来愈快?jin)?br /> (tng)大致ȝ?jin)一下这ƾ游戏的内容?br /> (tng)
 (tng) 1?/font>M环节Q除GUI{)(j)包括Q主角^収ͼ球Q大Q小Q,球子弹Q各U砖块(_粗l计一下有30多种Q其中特D砖?9U)(j)Q宝物(18U)(j)Q各U特效(7U)(j)Q关卡,兛_中的各种景物Q?2 U)(j)
 (tng) (tng) 2?主角q动分两部分Q^台的q动Q小球的q动Q^台按照左叛_^行运动,球按照撞轨迹q动
 (tng) (tng) 3?球子弹向上q动Q没有AIQ仅是向上垂直运动,我在考虑是不是加一个宝物,l子弹一些AI能力吧,嘿嘿
 (tng) (tng) 4?看来最累的工作在砖块的q动?jin),包括Q?
 (tng) (tng) (tng) (tng) (tng) 4? ?rn)?br /> (tng) (tng) (tng) (tng) (tng) 4? qq动
 (tng) (tng) (tng) (tng) (tng) 4? 圆周q动
 (tng) (tng) (tng) (tng) (tng) 4? 上下q动
 (tng) (tng) (tng) (tng) (tng) 4? 曲线q动
 (tng) (tng) (tng) (tng) (tng) 4? 贝塞?dng)大曲线q动
 (tng) (tng) (tng) (tng) (tng) 又分个体Q整体,混合随机q动
 (tng)

 (tng)  (tng) 5?/span>
各种Ҏ(gu)Q包括粒子系l。我惛_Ҏ(gu)上应该很漂亮?/span>

 (tng)

 (tng) (tng) (tng) 6。各U宝物,现在的实现状态是Q爆生或撞Q向下漂,然后消失?/span>

 (tng)

 (tng) (tng) (tng) 7。关卡背?span style="">Q?/span>景物不止一层。是多层。这需要ؓ(f)每一个景物,讄一个层ơ倹{(哪一U游戏都跑不?jin)?j)

 (tng)

 (tng) (tng) (tng) 8。各U需要实现的Ҏ(gu)Q包括:(x)

 (tng) (tng) (tng) (tng) (tng) 8? (tng) 球撞击墙壁

 (tng) (tng) (tng) (tng) (tng) 8? 球撞击砖块爆炸

 (tng) (tng) (tng) (tng) (tng) 8? 砖块的各U特?/span>

 (tng) (tng) (tng) (tng) (tng) 8? 球飞行的各U特?br />

 (tng) (tng) (tng) (tng) (tng) 8? 背景随机的动ȝ?br />

 (tng)

 (tng)  (tng) (tng) 更多的特性现在也许还没有玩到Q持l添加中。。?/span>

 (tng)

 (tng) 设计{划上,?x)用到的方?/o:p>


 (tng) (tng) 1Q?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> (tng) 可能多的属性由脚本文gQ?/span>XML文gQ来实现

 (tng) (tng) 2Q?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> (tng) 可能的实现对象模块化,插g化?/span>

 (tng) (tng) 3Q?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> (tng) 资源处理上做到脚本化。这是肯定的?jin),q么多物品,没有脚本理Q那是N?/span>


 (tng)

 (tng)  (tng)  (tng) 明天l箋(hu)。。。。?




softgamer 2007-02-05 21:27 发表评论
]]>
开始要写新游戏?-- 世纪弹蟩?Q第一天)(j)http://www.aygfsteel.com/softgamer/archive/2007/02/05/98023.htmlsoftgamersoftgamerMon, 05 Feb 2007 07:20:00 GMThttp://www.aygfsteel.com/softgamer/archive/2007/02/05/98023.htmlhttp://www.aygfsteel.com/softgamer/comments/98023.htmlhttp://www.aygfsteel.com/softgamer/archive/2007/02/05/98023.html#Feedback0http://www.aygfsteel.com/softgamer/comments/commentRss/98023.htmlhttp://www.aygfsteel.com/softgamer/services/trackbacks/98023.html (tng) (tng)q几天看朋友玩弹跳球Q打克隆这ƾ游戏,当然q是免费让大家玩。除?jin)?h)l写一些我使用C++的体?x),我一有空构思一下这ƾ游戏的实现方式Q这ƾ游戏比较复杂,比我克隆的Q何一ƾ游戏都复杂?/font>

 (tng) 怿大家都玩q弹跳球Q几q前Q我也玩q,不过q次的更刺激Q音效更逼真Q图像更_?/font>

 (tng) 在设计方面,严格按照软g工程的设计模式开发,后两天打脓(chung)出UML的图Q以做规范流E设计。估计时间d?周。(没算其他的事情)(j)?/font>

 (tng) 公司的工作也很繁重,我写驱动E序写了(jin)8q_(d)?D引擎写了(jin)3q_(d)q没看到q样的hQ这两天拿到一个芯片,老板要我2周写?gu)片的架构Q他疯了(jin)吧)(j)?/font>

 (tng)

 (tng) 我也疯了(jin)?/font>

 (tng)

 (tng) 前两天,惛_个卷轴的游戏Q但当我拿到术资源Q太多了(jin)Q管理v来相当费力。这U多层地囄实时卷动Q不是我一个hQ一周两周完成的 Q还是先放下?jin),转而写q款游戏。因为它的资源相对简单一些。做事情q是不能太Qw,以前脑袋一热就动了(jin)Q结果做到最后很吃力。很多时候想攑ּQ但又咬牙,告诉自己Q至要把DEMO写完Q让它能玩吧Q?/font>








softgamer 2007-02-05 15:20 发表评论
]]>
C++体会(x) -- 引用http://www.aygfsteel.com/softgamer/archive/2007/02/05/97990.htmlsoftgamersoftgamerMon, 05 Feb 2007 06:23:00 GMThttp://www.aygfsteel.com/softgamer/archive/2007/02/05/97990.htmlhttp://www.aygfsteel.com/softgamer/comments/97990.htmlhttp://www.aygfsteel.com/softgamer/archive/2007/02/05/97990.html#Feedback0http://www.aygfsteel.com/softgamer/comments/commentRss/97990.htmlhttp://www.aygfsteel.com/softgamer/services/trackbacks/97990.html 引用和引用参?/font>

 (tng) (tng) C++,其实Java ?c 都一? 调用函数的方法有两种

 (tng) (tng) 传D用和引用调用?br />
 (tng) (tng) 参数传D用时Q?font color="#ff3300">?x)生该参数值得副本q将副本传递给被调用的函数Q对副本的更改不?x)?jing)响调用者的原始变量?/font>Q?br />它的优点显而易见,Q缺Ҏ(gu)复制数据?x)花费较长的旉?br />
 (tng) 引用调用的优点就是避免复制大量的数据Q但安全性差Q?font color="#ff3300">因ؓ(f)被调用的函数?x)直接访问ƈ修改调用者的数据Q用是要格外小?/font>

#include <iostream>

using std::cout;
using std::endl;

int (tng) (tng) pbyValue( int );
void (tng) pByRef ( int & );

int main ()
{
 (tng) (tng)  (tng)int x = 2;
 (tng) (tng)  (tng)int z = 4;

 (tng) (tng)  (tng)cout << "x= " << x << " before pByvalue \n"
 (tng) (tng)  (tng) (tng) (tng)  (tng) <<"Getting value by pByValue: "
 (tng) (tng)  (tng) (tng) (tng)  (tng) << pbyValue( x ) << endl
 (tng) (tng)  (tng) (tng) (tng)  (tng) << "x : " << x << " Got Value\n" <<endl;
 (tng) (tng)  (tng)
 (tng) (tng) (tng) cout << "z= " << z << " before pBy Ref \n" << endl;
 (tng) (tng)  (tng) (tng) (tng)  (tng)
 (tng) (tng)  (tng)pByRef( z );
 (tng) (tng)  (tng) (tng) (tng)  (tng)
 (tng) (tng)  (tng)cout << "z : " << z << " Got Value\n" <<endl;
 (tng) (tng)  (tng)
 (tng) (tng)  (tng)return 0;

}

int pbyValue ( int a )
{
 (tng) (tng)  (tng)return a *= a;
}

void pByRef( int &cRef )
{
 (tng) (tng)  (tng)cRef *= cRef;
}



softgamer 2007-02-05 14:23 发表评论
]]>
C++体会(x) -- 内联函数http://www.aygfsteel.com/softgamer/archive/2007/02/05/97951.htmlsoftgamersoftgamerMon, 05 Feb 2007 03:40:00 GMThttp://www.aygfsteel.com/softgamer/archive/2007/02/05/97951.htmlhttp://www.aygfsteel.com/softgamer/comments/97951.htmlhttp://www.aygfsteel.com/softgamer/archive/2007/02/05/97951.html#Feedback0http://www.aygfsteel.com/softgamer/comments/commentRss/97951.htmlhttp://www.aygfsteel.com/softgamer/services/trackbacks/97951.html 内联函数

 (tng) (tng) C++ 提供?jin)内联函敎ͼinline functions Q,主要用于减少函数所使用的开销Q尤其对于小型函?br />
 (tng) (tng) 函数q回cd之前的限定符inline 让编译器在适当的程序部分生成函数的副本Q以避免函数调用Q这样ɽE序中插入多个函?br />代码的副本,令程序增大。而不是一个函数的副本Q每ơ调用函数时Q控刉?x)传到函CQ?br />
 (tng) (tng) 对内联函数的更改都需要重新编译该函数的所有调用者,q会(x)大大影响E序的维护,所以inline用于型的,使用频繁的函数最?
而且
内联函数 也ɽE序的执行时间减,但在~译时增大了(jin)E序的长度,当然也不l对Q有时也?x)减程序长度,特别?/font> 内联函数是非常小的函数时?br />

 (tng) (tng) 题外话, 使用const的目的在函数中只是保护原始实参的副本Q而不是原始实参本w?/font>






softgamer 2007-02-05 11:40 发表评论
]]>C++体会(x) -- 存储c?/title><link>http://www.aygfsteel.com/softgamer/archive/2007/02/05/97943.html</link><dc:creator>softgamer</dc:creator><author>softgamer</author><pubDate>Mon, 05 Feb 2007 03:04:00 GMT</pubDate><guid>http://www.aygfsteel.com/softgamer/archive/2007/02/05/97943.html</guid><wfw:comment>http://www.aygfsteel.com/softgamer/comments/97943.html</wfw:comment><comments>http://www.aygfsteel.com/softgamer/archive/2007/02/05/97943.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/softgamer/comments/commentRss/97943.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/softgamer/services/trackbacks/97943.html</trackback:ping><description><![CDATA[ <font face="Courier New" size="4"> <font color="#0000ff" size="5">存储c?/font> <br /> (tng) 在C++中有5个存储类说明W,<font color="#ff0000">auto,register, extern mutable 和static.</font><br />存储c说明符可以分ؓ(f)两个存储c,"自动存储c???rn)态存储类"<br /><br /> (tng) auto和register用于声明自动存储cȝ变量Q此cd量是在进入声明的块时创徏的,<font color="#ff3300">它们只存在与块被Ȁzȝ期间</font>Q当E序执行退出块Ӟq些变量׃(x)被删除?br /><br /><font color="#ff3300"> (tng) 只有变量可以作ؓ(f)自动存储c,函数的局部变量和参数通常属于自动存储c?/font>?br /><br /> (tng) (tng) (tng) (tng) auto double x, y;<br /><font color="#ff3300"><br /> (tng) (tng) 注意Q用自动存储可以节省内存Q我做程序的宗旨是单有效的是用内存,Z(jin)能有效的使用内存Q?br />我都是尽量有效的规划我的资源.</font><br /><br /> (tng) (tng) Ҏ(gu)auto,<font color="#ff3300">register 只能随局部变量和函数参数一起?/font>?br /><br /> (tng) (tng) (tng) (tng) register int x = 1;<br /> (tng)  (tng)<br /> (tng) (tng) (tng) 关键字extern ?static 是用于声明变量和?rn)态存储类函数的说明符Q它们存在于E序开始执行时Q程序在开始时׃ؓ(f)它们分配?jin)初始化的存储空_(d)<font color="#ff3300">但ƈ不意味着q些标识W可用于整个E序中,其还有作用域的约?。?/font>  (tng)<br /> (tng) </font> <br /> <img src ="http://www.aygfsteel.com/softgamer/aggbug/97943.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/softgamer/" target="_blank">softgamer</a> 2007-02-05 11:04 <a href="http://www.aygfsteel.com/softgamer/archive/2007/02/05/97943.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank">˼</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϳ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ٹ</a>| <a href="http://" target="_blank">˳ƽ</a>| <a href="http://" target="_blank">Ϊ</a>| <a href="http://" target="_blank">ϳ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank">۷</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ԭƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">崨</a>| <a href="http://" target="_blank">ν</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʩ</a>| <a href="http://" target="_blank">̫</a>| <a href="http://" target="_blank">½</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">н</a>| <a href="http://" target="_blank">½</a>| <a href="http://" target="_blank">ī</a>| <a href="http://" target="_blank">½</a>| <a href="http://" target="_blank">»</a>| <a href="http://" target="_blank">ӯ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϴ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank">IJ</a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>