タグ

c++に関するneumannのブックマーク (339)

  • C言語ケーススタディ ファイルダンプコマンドの作り方2

    2014年10月より個人の方を対象に、Study C無料提供を開始しました。 C言語を勉強中の方は、学習・教育に最適なC言語インタープリタのStudy Cを使ってみてください(個人の方は無料です)。 大学・高専・高校などの教育機関での採用実績も多数あるロングセラー商品Study Cが、個人向けに無料提供を始めました。 インタープリタの手軽さに加え、ゲームや3Dタートルグラフィックで楽しく勉強したりと、C言語の学習を強力にサポートします。 また、このようなボタンの用意されているページでは、掲載しているプログラムをStudy Cに直接ロードし実行したりすることができます。 Study C無料利用についての詳細は、このページを参照してください。 dump hello.c ---------------hello.c-------------- 00000000 6D 61 69 6E 28 29

    neumann
    neumann 2014/08/05
    dump
  • C++マニアック,STL の string の使い方,how to use STL string,標準テンプレートライブラリ,standard template library,文字列,C++言語

    C++マニアック STL の string の使い方,how to use STL string,標準テンプレートライブラリ,standard template library,文字列 このページでは STL の string の使い方について解説します。 string とは string の初期化 string と「MFC の CString」とのやりとり string をバイナリデータとして扱う string を連結する string は不便? Format() MakeUpper() MakeLower() TrimLeft() TrimRight() string をバリアント型にしてみる string とは ページの先頭へ string は、「要素が char 型の文字列」を表現するための型である、と考えている人が多いでしょう。 しかし、これは、ほんの少しだけ違います。 文字

    neumann
    neumann 2014/03/18
  • C#や.NET Frameworkがやっていること

    2014/3/1 Boost勉強会 #14 東京 にて https://sites.google.com/site/boostjp/study_meeting/study14 Boost勉強会なのに.NETの話で、1人だけ1時間(他の人は30分)。 来、自分のペースでは4時間くらいかかってもおかしくない分量を1時間で。

    C#や.NET Frameworkがやっていること
    neumann
    neumann 2014/03/15
    C++だとヘッダーファイルをへんこうしたら利用側の際コンパイルが必要。なのでsetter/getter/pimpleを使う。
  • 本当に怖いC++erとC++という糞言語 - 神様なんて信じない僕らのために

    かつて、ゲームプログラミングはアセンブリが主流で、8bitCPUは掛け算や割り算すらないものでした。割り算がないCPUっていつの時代だよ、っていう人たちもおりますが、ゲームボーイアドバンスに搭載されているARM7TDMIは除算の命令を持っていません。(故に除算を書くと死ぬほど遅いので、乗算で代用したりする) また、浮動小数に対する演算ユニットを持っていないハードウェアもあります。ニンテンドーDSに搭載されているARM946E-Sですら、浮動小数演算ユニットはありません。(CPUの機能としてはオプションで存在する)そのために固定小数点といった技術もあるわけですが、古くさい話です。 これらはCとC++の機能を駆使していかにパフォーマンスを出すかを余儀なくされた時代です。 さておき、最近はスマートフォンでのゲーム開発も進化しており、C++iPhoneAndroidの両方で動くということもあ

    本当に怖いC++erとC++という糞言語 - 神様なんて信じない僕らのために
    neumann
    neumann 2013/12/25
  • 'Hello World' サンプル (Windows)

    このトピックは次のセクションで構成されます。 説明 要件 サンプルのダウンロード サンプルのビルド コマンド プロンプトを使用したサンプルのビルド Visual Studio 2008 を使用したサンプルのビルド (推奨される方法) 説明 このサンプルでは、Direct2D を使用して画面にテキストを出力します。 要件

    'Hello World' サンプル (Windows)
  • Visual C++のレシピ:ちらつき防止。ダブルバッファリング

    多数の連続した描画処理を行う場合、画面の「ちらつき」が発生します。 この問題を防ぐにはダブルバッファリングという技術を使います。 ダブルバッファリングは仮想的な(メモリ上の)デバイスコンテキストに一度描画処理を行い、 一通り描画が終わった段階で実際のデバイスコンテキストに描画結果を転送することです。 言葉で書くと難しそうですが、追加するコードはあまり多くありません。 このダブルバッファリングはよく使うテクニックなので、 とりあえずコードの書き方だけでも憶えてください。 (ソースファイルはサンプルコードのtips3.zipにまとめてあります。) 前項までに動的レイアウト、再描画処理を加えたダメアプリをさらに改良してみます。 ダブルバッファリングの処理はOnPaintに記述します。 (OnPaintが描画を扱う関数だからです。) 具体的な記述を下に示します。else以下(@以下

    neumann
    neumann 2013/11/08
  • MFC画文字DrawText,GetTextExtent,GetTextMetrics - 庚武 - 博客园

    neumann
    neumann 2013/11/03
  • CDC::GetTextExtent

    更新 : 2007 年 11 月 寸法を決定するために現在のフォントを使って、行の幅と高さを計算します。 CSize GetTextExtent( LPCTSTR lpszString, int nCount ) const; CSize GetTextExtent( const CString& str ) const; パラメータ lpszString 文字列へのポインタ。このパラメータには、CString オブジェクトを渡すこともできます。 nCount 文字列内の文字数を指定します。 str 指定した文字列を保持する CString オブジェクト。 戻り値 文字列の寸法 (論理単位) を CSize オブジェクトで返します。 解説 この情報は、属性デバイス コンテキストの m_hAttribDC から取得します。 既定で、GetTextExtent は、寸法を取得するテキストが水平

    CDC::GetTextExtent
    neumann
    neumann 2013/11/03
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    neumann
    neumann 2013/11/02
  • TextOutで表示されるフォントの変更

    neumann
    neumann 2013/11/02
  • 方法: Windows Phone Marketplace 用のスクリーンショットを作成する

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

    方法: Windows Phone Marketplace 用のスクリーンショットを作成する
    neumann
    neumann 2013/11/01
  • ゲーム開発者のための C++11/C++14

    constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだGenya Murakami

    ゲーム開発者のための C++11/C++14
    neumann
    neumann 2013/10/20
  • http://www7a.biglobe.ne.jp/~forte/xml/xmlread.htm

    #include "stdafx.h" // MSXMLライブラリのインポート #import <msxml4.dll> // typedef typedef MSXML2::IXMLDOMNodeListPtr INodeListPtr; typedef MSXML2::IXMLDOMNodePtr INodePtr; typedef MSXML2::IXMLDOMElementPtr IElementPtr; /*! XML読み込みサンプル */ int _tmain(int argc, _TCHAR* argv[]) { // COMライブラリの初期化 CoInitialize(NULL); // ドキュメントのインスタンスを作成 MSXML2::IXMLDOMDocument2Ptr pDoc; pDoc.CreateInstance( __uuidof(MSXML2::DOMDo

  • CString Operations Relating to C-Style Strings

    neumann
    neumann 2013/10/01
  • 全ての組み合わせを作る【C++】 - Programming Magic

    C++で全ての順列を作りたければ、STLにnext_permutation関数があり、以下のように簡単に作ることができる。 #include <iostream> #include <vector> #include <algorithm> int main(){ const int n = 3; std::vector<int> data; // [0, 1, 2, ....]というサイズnの配列を作成 for(int i=0; i<n; ++i){ data.push_back(i); } // 全ての順列を出力 do{ std::cout << "[ " << data[0]; for(unsigned int i=1; i<data.size(); ++i){ std::cout << ", " << data[i]; } std::cout << " ]" << std::end

    neumann
    neumann 2013/09/26
  • C++マニアック,オペレータのオーバーロード,operator overload,演算子のオーバーロード,演算子

    ()、関数呼び出し演算子、関数オブジェクト 演算子の表へ ページの先頭へ () は、関数呼び出しの演算子です。これをクラス定義の中でオーバーロードすると、クラスオブジェクトの後ろに () を付けて、関数呼び出しの形式で呼び出せるようになります。 まず、定義の仕方を見てみましょう。次の例では、整数の引数 iValue を取り、これを 2 倍にして返す演算子 () を定義しています。 class CManiac { public: int operator()(int iValue) { return 2 * iValue; } }; 次に、これを使う側の例を見てみましょう。 int main() { CManiac maniac; // クラスオブジェクト maniac を作成する。 int iValue = maniac(1); // 関数呼び出し演算子 () を maniac に適用する

    neumann
    neumann 2013/08/31
  • Walkthrough: Create and use your own Dynamic Link Library (C++)

    This step-by-step walkthrough shows how to use the Visual Studio IDE to create your own dynamic link library (DLL) written in Microsoft C++ (MSVC). Then it shows how to use the DLL from another C++ app. DLLs (also known as shared libraries in UNIX-based operating systems) are one of the most useful kinds of Windows components. You can use them as a way to share code and resources, and to shrink th

    Walkthrough: Create and use your own Dynamic Link Library (C++)
    neumann
    neumann 2013/08/06
    これを、[プロパティ ページ] のダイアログ ボックスで、[構成プロパティ] のノードを展開し、[C/C++] のノードを展開し、を [全般] を選択します。 [追加のインクルード ディレクトリ] の横に、MathFuncsDll.h ヘッダー ファイル
  • C言語ケーススタディ ファイルダンプコマンドの作り方1

    2014年10月より個人の方を対象に、Study C無料提供を開始しました。 C言語を勉強中の方は、学習・教育に最適なC言語インタープリタのStudy Cを使ってみてください(個人の方は無料です)。 大学・高専・高校などの教育機関での採用実績も多数あるロングセラー商品Study Cが、個人向けに無料提供を始めました。 インタープリタの手軽さに加え、ゲームや3Dタートルグラフィックで楽しく勉強したりと、C言語の学習を強力にサポートします。 また、このようなボタンの用意されているページでは、掲載しているプログラムをStudy Cに直接ロードし実行したりすることができます。 Study C無料利用についての詳細は、このページを参照してください。 ファイルの内容を16進数で表示するダンプコマンドと同じ機能のプログラムを作成します。 StudyCにもダンプコマンドが用意されているので最終的にはそれと

    neumann
    neumann 2013/07/11
  • Skeleton of GOF's Design Pattern

    COMMAND このパターンは、要求を出すオブジェクトと処理をするオブジェクトを分離します。 COMMAND パターンは、、Invoker と Command と Receiver の三つのクラスで構成されています。Invoker はイベント(メソッド呼び出し)を受けると、イベントに対応する処理を行う Command を生成し、しかるべき手順でを発火させる役割を担います。Command はイベントに応じた処理を手順を記述したものです。スクリプトのようなものと捉えるとわかりやすいと思います。Receiver は、その処理を行う実体です。実際にはOSやミドルウェアが用意するAPIや、ドライバなどがそれにあたると思います。 このパターンは、イベントに対する処理の流れが Command にカプセル化されますので、イベントに対応した手順が非常に分かりやすくなるのが特徴です。組み込みシステムでは非常に

    neumann
    neumann 2013/07/09
  • 天才プログラマー養成ギプス

    天才ゲームプログラマ養成ギプス またの名を  略して、「には」とお呼びください(笑) やねうらおの考えでは、ゲームプログラミングに必要なテクニックとは、おおよそ800通りに分類されます。(800だけに嘘800です。すんません:p) そのうちの重要な12パターンを今年一年かけて解説しようと思っています。 内容はなーんも考えていません。12パターンの根拠もありません。毎月一回書いたら12ヶ月で12パターンかなーとか…すんまそん(笑) プロ・アマ問いません。内容に対する、ご意見・ご感想などお待ちしております。雑誌への掲載も歓迎です。というか原稿書かせてくださいな(笑) とりあえず、しばらくはゲームプログラミングに必須な実践テクニックをどこよりもおざなりに、誰よりもいい加減に解説しようかなって…(それじゃダメじゃん…) 過去ログ1 過去ログ2 関連書籍(New '01/02/25) 第14章.コ

    neumann
    neumann 2013/07/09