ここで紹介されるプログラムは Microsoft Windows XP で動作確認されています ソースは Borland C++ Compiler 5.5 を用いてコンパイルされています 解説は OpenGL Version 1.1 に準拠しています。 この講座は ANSI C/C++ 及び GUI プログラムの開発経験者を想定しています
クリティカルセクション マルチスレッドプログラミングは、プログラムの全体の分野でも高度な手法です プログラムをする上で、本当に必要な場合を除けば使うことを避けるべきでもあります 同じことを、タイマーで実現できるのならば、タイマーを使うべきであるとも言えます なぜ、スレッドは高度で危険を含むのか それは、同じ記憶領域を複数のプログラム(スレッド)が操作するからです 一つのグローバル変数を、二つのスレッドが同時に参照することを考えてください お互い、この変数を書き換えたり読み込んだりして、重要な処理を行う時 正しい順番で読み書きが行われなかったとき、プログラムの整合性は失われます #include <windows.h> int iCount; DWORD WINAPI ThreadFunc1(LPVOID hWnd) { HDC hdc; TCHAR str[32]; for (iCount
文字列化演算子 マクロ関数だけで使用できる、便利な演算子が用意されています そのひとつが文字列化演算子です マクロ関数で受け取った値に対して#記号をつけることで それを文字列、すなわちダブルクォーテーションをつけた状態に置換えます (プリプロセッサディレクティブであることを忘れないでください。あくまでソース上で置き換わるだけです) #define STRING(str) #str このマクロ関数は、仮引数の値をダブルクォーテーションをつけた状態に置き換えます 次のプログラムを実行してください #include <stdio.h> #define PRINT(str) printf(#str "\n") #define STRING(str) #str int main() { PRINT(Kitty on your lap); printf("%sバイトは1キロバイト" , STRING(
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く