Time of Update: 2018-12-04
學習C++ STL的目的不是讓我們的編程更複雜,而是讓我們的編程更簡單,比如要實現C++ string類型的字串字元替換功能就可以用到一個很強大的函數replace,它的文法聲明如下:template<caass FwdIt, class T> void replace(FwdIt first, FwdIt last, const T& vold, const T& vnew);要使用這個函數,首先我們得引入標頭檔,如下:#include <
Time of Update: 2018-12-04
終於到了邏輯層,分析一下遊戲中的邏輯關係:小球與磚塊碰撞檢測、小球與擋板碰撞檢測、判斷遊戲結束、積分規則等……物體碰撞檢測方法很多,其中Rectangle結構中的publicbool IntersectsWith(Rectangle
Time of Update: 2018-12-04
一、遊戲架構完善 前幾章中,遊戲架構並沒有渲染遊戲的能力,只是進行一些邏輯輸入的運算,並沒有把畫面反饋到控制台介面。這一章中,我們將要擴充架構的功能,使它能夠對遊戲畫面進行持續渲染。擴充的功能有:遊戲的渲染和控制台的重繪,後者的意思是局部更新,則只更新指定的地區部分,其餘地區畫面保持不變,減小畫面因繪製導致的閃爍。下面是遊戲架構類的擴充後的實現: ///CGame類實現using System;using System.Threading;using
Time of Update: 2018-12-04
一、遊戲分析 相信大家對金山打字通、打字精靈等打字軟體非常熟悉,想當年剛接觸電腦時還靠它們的打字遊戲練習打字基本功。這章的遊戲DEMO就是一個打字小遊戲,當然,它很簡單,只是A~Z字母的打字練習小遊戲。遊戲的設計也不複雜,遊戲開始時先初始化下落字母的個數和每次下落字母的機率,隨著時間的進行,字母會從介面上方逐漸下落到介面底下,在這過程中你需要敲擊鍵盤上與介面下落的字母相對應的鍵位,如果鍵位的字母與下落的字母一致,則記錄打字正確數量,否則不記錄,無論如何,敲擊一次鍵盤記錄一下敲擊鍵盤數,當字母下
Time of Update: 2018-12-04
編譯環境vc 9#ifndef SCANALLFILES_H#define SCANALLFILES_H#include "boost/filesystem/operations.hpp"#include "boost/filesystem/path.hpp"#include <iostream>using namespace std;class ScanAllFiles{public:static const vector<string>& scanFiles(
Time of Update: 2018-12-04
#include<iostream>#include<time.h>using namespace std;int main(){ clock_t s,e; s=clock(); for(int i=0; i< 100000;i++) { cout<<i<<endl; } e=clock(); cout<<"
Time of Update: 2018-12-04
函數模板( Function templates)模板(Templates)使得我們可以產生通用的函數,這些函數能夠接受任意資料類型的參數,可返回任意類型的值,而不需要對所有可能的資料類型進行函數重載。這在一定程度上實現了宏(macro)的作用。它們的原型定義可以是下面兩種中的任何一個:template <class identifier> function_declaration;template <typename
Time of Update: 2018-12-04
/*本程式時為了驗證用宏來做 * 兩個數的大小比較的寫法*/#include<stdio.h>#define MAX(x,y) ((x)<(y)?(y):(x))#define MIN(X,Y) ({\typeof (X) x_ = (X);\typeof (Y) y_ = (Y);\(x_ < y_) ? x_ : y_; })/*({...})的作用是將內部的幾條語句中最後一條的值返回,它也允許在內部聲明變數(因為它通過大括弧組成了一個局部Scope)*/int
Time of Update: 2018-12-04
C++永久Object Storage Service (Persistent Object Storage for C++)簡介 描述物件類型 從儲存空間中分配和釋放對象 永久對象協議 儲存空間建構函式 開啟儲存空間 POST++ 的安裝 POST++ 類庫 和 POST++一起使用 STL 類 替換標準分配子 如何使用 POST++ S調試 POST++ 應用的細節 關於 POST++ 更多的一些資訊 簡介POST++ 提供了對應用對象的簡單有效儲存. POST++
Time of Update: 2018-12-04
基本思路,就是載入指令檔,讀取它的內容並執行它!Include "C:\workspace\vbs\Libraries\MySQLDB.vbs"Sub Include(sInstFile) Dim oFSO, f, s Set oFSO = CreateObject("Scripting.FileSystemObject") Set f = oFSO.OpenTextFile(sInstFile) s = f.ReadAll f.Close Set f = NothingSet oFSO =
Time of Update: 2018-12-04
KBTiller兄在書籍扉頁寫指正,不敢指正,共同討論。其實第一篇在年前已看完,由於過節心態浮躁一直沒能總結記錄。仔細想想自己真是拖拉的要命,再不寫點東西對不起KBTiller兄的熱情心意。本文大部分內容屬於跟作者觀點不一致的描述,我不是初學者,所以與其是讀書筆記,不如說挑刺,儘管這樣,書中還是有不少讓我受益良多的地方。為了整理方便,主體內容分四個不同的部分,有的問題分界比較模糊,主觀因素比重很大。至於為什麼會這麼長,那是因為我吹毛求疵了
Time of Update: 2018-12-04
首先請下載ACE包,這裡就多說了. 完成下載ACE包後,把ACE包解壓縮,把裡面的ACE_wrappers存放到指定的目錄,這裡把它存放到D盤,也就是D:/ACE_wrappers. 在使用之前需要先編譯安裝. (1)進入目錄 D:/ACE_wrappers/ace下,在裡面添加一個新檔案config.h,並在config.h中輸入內容: #include "ace/config-win32.h". (2)點擊開始菜單的"運行"項,在快顯視窗中輸入命令:cmd 進入命令控制台.
Time of Update: 2018-12-04
All unary and binary operators have pre-defined implementations, that are automatically available in any expressions. In addition to this pre-defined implementations, user defined implementations can also be introduced in C#. The mechanism of giving
Time of Update: 2018-12-04
(1)sort函數的用法做ACM題的時候,排序是一種經常要用到的操作。如果每次都自己寫個冒泡之類的O(n^2)排序,不但程式容易逾時,而且浪費寶貴的比賽時間,還很有可能寫錯。STL裡面有個sort函數,可以直接對數組排序,複雜度為n*log2(n)。使用這個函數,需要包含標頭檔。這個函數可以傳兩個參數或三個參數。第一個參數是要排序的區間首地址,第二個參數是區間尾地址的下一地址。也就是說,排序的區間是[a,b)。簡單來說,有一個數組int
Time of Update: 2018-12-04
/*_______________________________________________________________ 動畫的原理就是連續繪製/播放圖片,當每秒繪製/播放不同表情、動作圖片一定幅數的時候就是造成視覺錯覺,就會看到很流暢的動畫效果!有了動畫,物體才有了靈魂和生命。
Time of Update: 2018-12-04
這一節分析下具體實體類的定義和實現,下面是這個遊戲的實體類結構: 遊戲物體的運動就是不斷建立畫面和銷毀畫面的過程,原理和播放錄象帶一樣。所以我定義了一個基類,裡面定義了子類共同的成員,由於方法具體實現都一樣,所以在基類裡的Draw和Crear方法並沒有定義為抽象方法,反而具體實現了它們!子類繼承後就不需要具體實現了。CommonMethod.cs/// <summary> /// 這裡定義了一些蛇類和食物類中共同用到的函數和基本屬性資料,供子類繼承 ///
Time of Update: 2018-12-04
到了邏輯層了,我們要分析遊戲的規則:是否蛇可以爬行、是否吃掉食物、是否產生新食物、是否遊戲結束、積分規則等。 蛇死亡目前有兩種形式:撞到牆壁;咬到自己 :( 產生新食物前提:蛇吃掉食物,隨機產生新座標食物(新座標!=蛇身[n])。GameLogic.cspublic class GameLogic { /// <summary> /// SNAKE_INIT_LENGH:蛇預設長度 ///
Time of Update: 2018-12-04
/*__________________________________________________________________ 遊戲採用的素材主要有這幾種形式的,4*4 、1*N、1*1等,如果你不想處理那些複雜的素材,全部用1*1的素材即可,只是畫面會比較單調點而已,個人喜好了。
Time of Update: 2018-12-04
我把遊戲命名為SabBoy-->破壞王,名字威武得像不像天朝的拆遷隊!先看看遊戲的類圖: BaseEntity:抽象類別ISabBoy:介面類Ball:小球類,能運動,實現"運動"介面。Board:擋板類,能運動,實現"運動"介面。Brick:磚塊類,靜止的磚塊,沒有"運動"行為。 基本的架構構建好了,下面就是實現的問題了,一步步漸進,先從基類開始:BaseEntity.cs public abstract class BaseEntity { //座標
Time of Update: 2018-12-04
/*---------------------------------------------------------------------------------------------- 時隔很久又想到csdn部落格了,心血來潮想發表幾篇毫無技術含量的文章,請務必相信我,絕對沒有任何技術可言,都是胡思亂想毫無“標準”的“亂作”!管它呢,代碼寫得再差也是自己的事,自己能寫出點小玩意高興就行了,對吧!