Time of Update: 2018-12-05
#include <iostream>using namespace std;// Abstract Shapestruct Shape { virtual ~Shape(){} };enum {SHAPE_LINE = 1, SHAPE_POLYGON = 3, SHAPE_CIRCLE = 5};// Concrete Shapes: Line, Polygon and Circlestruct Line : public Shape { Line() { cout
Time of Update: 2018-12-05
#include <iostream>using namespace std;class Element;class ElementA;class ElementB;#define USE_LOKI#ifndef USE_LOKI // Abstract Visitor class Visitor{ public: virtual void VisitElementA(ElementA&) = 0;
Time of Update: 2018-12-05
(1) 在程式中將顏色緩衝從32位改為16位,查看FPS值是否增加,以確定瓶頸是否因為幀真緩衝頻寬引起。(2) 在NVPerfHUD中按下Ctrl+T將紋理強行設定為2*2大小,查看FPS值是否增加,以確定瓶頸是否因為紋理頻寬引起。(3) 在NVPerfHUD中按下Ctrl+1、Ctrl+2……Ctrl+9,NVPerfHUD會自動強行簡化各個Profile的Pixel Shader程式,查看FPS值是否增加,以確定瓶頸是否因為複雜的像素程式引起。(4)
Time of Update: 2018-12-05
遊戲中提供很多可供配置的設定,有利用適應多種不同的硬體設定,也有利於適應用不同玩家的操作習慣.如果每次進遊戲的話都要重設一次,這顯然就失去了配置的意義,不如用一個適用範圍比較廣的預設值算了.所以,配置需要儲存.windows中就有眾多的的ini檔案,還有一些軟體會把資訊存入註冊表.但是,當配置資訊較多或是對安全性有所考慮時,這就不太適合了.而且,解析ini檔案(或XML)等文字格式設定的配置,也是一件比較麻煩的事.另一種比較方便的方法就是採用二進位儲存,直接把記憶體中的資料轉儲,下次用的時候再重
Time of Update: 2018-12-05
最先出現的是阻塞模型,這個模型是講解電腦網路時被作為例子介紹的,也是最簡單的。其基本原理是:首先建立一個socket串連,然後對其進行操作,比如,從該socket讀資料。因為網路傳輸是要一定的時間的,即使網路通暢的情況下,接受資料的操作也要花費時間。對於一個簡單的單線程程式,接收資料的過程是無法處理其他動作的。比如一個視窗程序,當你接收資料時,點擊按鈕或關閉視窗操作都不會有效。它的缺點顯而易見,一個線程你只能處理一個socket,用來教課還行,實際使用效果就不行了。為了處理多個socket串連,
Time of Update: 2018-12-05
本想用自動紋理座標產生做的,可是紅寶書上說得一點都不明白。網上有個人的課程設計是自己畫的球,就是一個個四邊形的拼個球,然後再給四邊形貼圖。這樣太麻煩了!逛啊逛,讓我找到了另一種方法,僅僅幾行代碼:// 畫地球void OpenGL::DrawEarth(void)...{ GLUquadricObj *quadObj = gluNewQuadric();//建立一個二次曲面物體 gluQuadricTexture(quadObj,GL_TRUE); //啟用該二次曲面的
Time of Update: 2018-12-05
#include <boost/config/warning_disable.hpp>#include <boost/spirit/include/qi.hpp>#include <boost/bind.hpp>#include <boost/lambda/bind.hpp>#include <boost/spirit/include/phoenix.hpp>#include <iostream>struct writer{
Time of Update: 2018-12-05
#include <iostream>#include <stack>#include <boost/lexical_cast.hpp>//#define BOOST_SPIRIT_DEBUG#include <boost/spirit/include/classic.hpp>#include <boost/spirit/include/classic_dynamic.hpp>#include
Time of Update: 2018-12-05
看了好久好逮能讓N3畫出東西來了, 感覺它的架構就是專門為DX而設計的^_^. 雖說也能編寫GL的中介層(因為N3的API是處於繼承樹的中間, 而不是最底下), 但是很多習慣一看就是DX嘛. 可能用慣API的會比較好上手點. 命令列程式都是從ConsoleApplication派生, 那麼圖形程式就是從RenderApplication派生了^_^. 先看看RenderApplication都有哪些成員:Ptr<Core::CoreServer>
Time of Update: 2018-12-05
#include <iostream>#include <list>#include <string>#include <tuple>#include <algorithm>#include <boost/foreach.hpp>using namespace std;typedef pair<int, int> Position;inline Position operator+(const Position&
Time of Update: 2018-12-05
文章目錄 Aggregate(Count)彙總(計數)Aggregate(Sum)彙總(求和)Aggregate(Min)彙總(求最小值)Aggregate(Max)彙總(求最大值)Aggregate(Average)彙總(求平均值)Aggregate(Simple)簡單彙總Aggregate(Seed)帶種子的彙總 Aggregate(Count)彙總(計數)計數操作用於統計原創組合中符合某種條件的成員的個數,結果值為整數。
Time of Update: 2018-12-05
文章目錄 Java代碼Haskell代碼F#代碼 Java代碼package hello;public class TestA { public static int sum( int... numbers ) { int total = 0; for ( int n : numbers ) total += n; return total;
Time of Update: 2018-12-05
本文試圖藉助Loki類庫中的Singleton組件和AbstractFactory組件來應用Abstract Factory模式。 範例程式碼如下: #include <iostream>#include <memory>#include "AbstractFactory.h"#include "Singleton.h"using namespace std;using namespace Loki;// Abstract products A and Bstruct
Time of Update: 2018-12-05
文章目錄 傳統方式新方式 傳統方式 1. XXDoc.h//...class CXXDoc : public CDocument{//...// Operationspublic:void Foo1();void Foo2();void Foo3();//...};2. XXDoc.cpp//...void CXXDoc::Foo1(){// Do Foo1}void CXXDoc::Foo2(){// Do Foo2}void
Time of Update: 2018-12-05
文章目錄 Q:如何在C系列語言(C,C++,Java,C#)中避免以下代碼中的過度縮排?A:使用 do {} while (false) 技巧 Q:如何在C系列語言(C,C++,Java,C#)中避免以下代碼中的過度縮排?void f(){f1();if(condition1){f2();if(condition2){f3();if(condition3){f4();if(condition4){f5();if(condition5){f6
Time of Update: 2018-12-05
文章目錄 代碼 A* Graph Search Within the BGL Framework 代碼#include <algorithm>#include <iostream>#include <list>#include "nonconst_bfs.hpp" // so we can modify the graph#include
Time of Update: 2018-12-05
文章目錄 C#代碼可調試的Queens函數(完全不用LINQ的“傳統”版本)補記:F#版本 C#源碼摘自CSDN論壇.NET技術貼:從n皇后問題看Linq的對演算法思想的清晰表達力,原作者sp1234。註:變數名及程式邏輯稍有改動,求解部分加上了注釋。 C#代碼using System;using System.Collections.Generic;using System.Linq;using
Time of Update: 2018-12-05
以下代碼示範各語言中的原生多行字串。多行字串的值:\123\"456"<789>C#var s = @"\123\""456""<789>";VBDim s = <xyz>\123\"456"<789></xyz>.ValueC++11auto s = R"(\123\"456"<789>)";auto s =
Time of Update: 2018-12-05
在經過漫長的度日如年的2周后,我終於收到HR JJ的通知,加入仟遊,成為一名實習生了。心裡萬分激動。 這是我人生第一份工作啊,13年的學習生涯從此成為過去,告別同學,告別老師,告別考試,告別懶覺……心裡還有點點不習慣,真的沒想到這麼快就跨入社會了,心理準備還不怎麼充分……以後我就把自己當作一個職業人,一個2K人,一個社會人……
Time of Update: 2018-12-05
自從報了學校的項目後,我就打算學習OPENGL了。 這個項目是移動平台的3D 模型展示,最開始我什麼都不知道,心裡直打鼓,直到老師給我們組四個人分好工後,我心裡才有了點譜。 一開始老師讓我用J2ME,後來買了本書,寒假期間就把顯示模型的事情搞定了。後來我就花時間做程式介面去了,後來想想真是有點幼稚,而且浪費了寶貴時間。