タグ

c++とvectorに関するtyosuke2011のブックマーク (6)

  • ゲームプログラミングでのオブジェクト管理いろいろ

    始めに ゲームプログラミングは一般的に結構難しいと言われているようです。 見た感じはこういう風になってるんだなぁと理解しても、実際に自分で作ってみると メニュー画面を作るのにも手間取ってしまったりします。 そんな中、ゲームプログラミングについて今までさまざまな手法が考案され、使用されてきました。 自分の勉強の意味も込め、さまざまな(ごく一部ですが)手法について検討し、まとめたいと思います。 (C++を大体知ってる前提でものすごい勢いで説明していきます、分からない人はすみません。) (あと今回はシューティングゲームで使えそうなものについて説明します) 敵などの情報を配列に詰め込む ゲームにはさまざまなオブジェクトが存在します。具体的に言うと、自分や敵や、場合によっては駒とか。 そういうものは結局、キャラクターの情報を含む実体を作った後、配列に入れて一元管理します、単純には。

  • 多倍精度整数の基礎 ( 四則演算編 ) - Qiita

    coe は次数 i ごとの任意の係数, radix は基数. 具体的には std::vector の template 引数に coe を指定し配列の添え字を i とする. 実装 準備 まずクラスに与えられるべき必要な template parameters を確認する. template< class UInt = std::uint16_t, class DoubleUInt = std::uint32_t, class DoubleInt = std::int32_t, DoubleUInt BitNum = sizeof(UInt) * CHAR_BIT > class integer; class UInt = std::uint16_t ここには coe の型を指定する. coe で表現できる最も大きな値 + 1 が radix になる. class DoubleUInt =

    多倍精度整数の基礎 ( 四則演算編 ) - Qiita
  • 画面キャプチャーソフトを作る

    (1)はじめに ('01/11/20) (2)ソースコードの紹介 ('01/11/25) (3)JPEG書き出し ('01/11/30) (4)保存領域の指定 ('01/12/05) (5)矩形選択の指定位置を拡大表示する ('01/12/10) 日経ソフトウェアのバックナンバー(1999年2月号)でソースコードがダウンロードできるページを見つけました。 http://software.nikkeibp.co.jp/software/download/down99.html Visual C++6.0をお持ちの方はコンパイルすればキャプチャソフトが作成できます。 (6)AVIファイルの取り扱い ('01/12/16) (7)AVIファイルからBMP取り出す ('01/12/22) (8)AVI作成時にエラーダイアログが大量に表示されて操作不能になる不具合を修正しました。 ('04/01/2

  • http://www.cppll.jp/cppreference/iterators.html

  • C++ 動的配列クラス std::vector 入門

    動的配列クラス std::vector とは std::vector とは C++ で標準に使用できるとっても便利な動的配列クラスでござるぞ。 通常配列と同じように [] 演算子で値を参照・代入することはもちろん、サイズ情報等の取得やデータの挿入削除なども可能だ。 「動的配列」とは配列サイズを自由に増減できるという意味。「可変長配列」と呼ばれることもある。 通常の配列は非常に便利で使用頻度の高いデータ構造だが、サイズを予め指定する必要があり、実行時に動的にサイズを変更することが出来ない。 例えば、「int data[100]; 」と宣言した場合、実行時にデータ数が100を超えるとお手上げだ。 スネークゲームでは、ヘビの胴体の長さがどんどん長くなるので、 胴体座標を動的配列で実装している。 これを普通の配列で実装すると、胴体の最大長を保持する可能性があるので、78*21=1638 のサイズの

    C++ 動的配列クラス std::vector 入門
  • コンテナ【vector】 | C++入門~bituse~

    まずは、コンテナのvectorから説明します。 vectorを利用するには、vectorというヘッダファイルをインクルードする必要があります。 また、stdという名前空間に属しています。 まず下記のコードを見てください。 #include <vector> using namespace std; void func(vector<int>::iterator begin,vector<int>::iterator end){ for(;begin!=end;++begin){ printf("%d,",*begin); } //改行 printf("\n"); } int main(void) { //vector型のコンテナ宣言 vector<int> test; //vector型のイテレーターを宣言 vector<int>::iterator begin,end; //リストの末尾

  • 1