タグ

関連タグで絞り込む (428)

タグの絞り込みを解除

c++に関するtyosuke2011のブックマーク (472)

  • Linus「C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが 簡単に生産されるようになってる」

    /15 [4] (21:54) 原文: http://lwn.net/Articles/249460/ From: xxx To: xxx Subject: Re: [RFC] builin-mailinfo.c をマシな文字列ライブラリを使うようにすること Date: Thu, 6 Sep 2007 18:50:28 +0100 (BST) Message-ID: <alpine.LFD.0.999.0709061839510.5626@evo.linux-foundation.org> On Wed, 5 Sep 2007, Dmitry Kakurin wrote: > > Git のソースコードを最初に見たとき、ヘンだと思ったこと: > 1. C++ じゃなくてただの C を使ってる。理由は謎。移植性がどうとか言わないで、 > そんなのウソに決まってるから。 *あんた* のほうこそ

  • Ken Kobayashi CPP1

    C++によるプログラミング入門1 プログラミングの基礎知識 こんにちは。C++を使ったプログラミング入門をはじめます。 この講座はプログラミングの初心者を対象としてC++を楽しくおぼえていくというものです。ぎちぎちした文法や細かい知識は話しません。そういうことは、 この講座をおえれば、一人でもを読んでおぼえていけるでしょう。 また、用語はすべてキチンと解説していくと百科事典になってしまうので、ウソにならないように気をつけながら、なるべく簡単な説明で講義を進めていくつもりです。 C++でプログラミングをする場合、C++用の「処理系」(後述)が必要です。これについてはあらかじめどこかで入手して、簡単な使い方を、知っている近くの人にでも聞いておいてください。有名な処理系としては、例えば、Borland C++、Visual C++、gccなどがあります。もちろん、他にもいろいろ優れたものがあり

  • Effective C++

    Effective C++ 第3版 プログラムとデザインを改良するための55項目 2006年5月22日発行 315ページ 3800円+税 ピアソン・エデュケーション発行 スコット・メイヤーズ著 小林健一郎訳 1991年の初版からC++コミュニティに大きな影響を与えてきた書籍の第3版です。内容は、55個のガイドライン(アドバイス)からなっています。C++プログラミングをするなら、ぜひご一読を、と思います。 第 1章 C++に慣れよう 第 2章 コンストラクタ、デストラクタ、コピー代入演算子 第 3章 リソース管理 第 4章 デザインと宣言 第 5章 実装 第 6章 継承とオブジェクト指向設計 第 7章 テンプレートとジェネリックプログラミング 第 8章 newとdeleteのカスタマイズ 第 9章 いろいろな事 付録A Effective C++を超えて 付録B 第2版と第3版の対応表 訂正

  • Ken Kobayashi cpp20

    C++によるプログラミング入門20 ポインタ こんにちは。今回はいよいよポインタです。初心者の方は「何がいよいよだよ」と思ったことでしょう。どうもすみません。これにはいわく因縁があるのです。なんちゃって。 多くの人がC++のもとになったCという言語を勉強したのですが、同時に大量の挫折者もだしたようです。その挫折理由のナンバーワンがこのポインタだったと言われています。そいうお話があったのです。少しおどかしてしまいましたが、安心してください。当はそんなに難しいものではありません。 前に変数とは一般に整数などをいれておく「いれもの」だという話をしましたが、いれものに入れられた情報は、メモリ上のどこかに置かれるはずです。メモリが実際にどのように作られているかは、特別な人以外知らないわけですが、イメージだけは持っていましょう。それは、情報をいれておく箱の列のようなものです。そして、メモリの個々の箱

  • zlib 1.2.7 を Visual Studio 2012 RC でビルドする - ぼく用あれこれまとめ

    zlib 1.2.7 を Visual Studio 2012 RC でビルドする zlib 1.2.7(May 2, 2012) を Windows 7 環境にて導入します。 Visual Studio 2012 RC を使用しています。32bit(x86) 環境です。適宜、お使いの環境に合わせて読み解いてください VC++ 11 Beta コンパイラを使うので、それまでの VC++ 10 環境(Visual Studio 2010)と混同しないよう注意してください。 Visual Studio 2012 Express (Visual C++ 2012 コンパイラ)を使用する場合は以下のページを参照してくださいzlib 1.2.7 を Visual Studio 2012 Express でビルドする ダウンロード http://zlib.net/(公式サイト)から「zlib sour

    zlib 1.2.7 を Visual Studio 2012 RC でビルドする - ぼく用あれこれまとめ
  • 積読消化+開発合宿をしたら大失敗だった話 - 5.1さらうどん

    photo by EYLC 積読消化合宿というのをやりました - miyohide's blog この記事に憧れて「週末は温泉に行って開発したり積読を消化するぞ!!!」という気概で10/30 ~ 11/1にかけて箱根に行ってきました。 最高の環境で温泉に浸って、美味しいものをべながら仲間達と読書と開発に励めば、それは目覚ましい成果が出るに違いありません。 この会の目的 以下の積ん読を消化しようと張りきって持って行きました。特に「すごいHaskell」に関しては3年ぐらい途中まで読んでは放置の繰り返しなので、今回こそ読了するぞ!という気持ちで挑みました。 すごいHaskellたのしく学ぼう! 作者:Miran Lipovačaオーム社Amazon Effective Python: 59 Specific Ways to Write Better Python (Effective Sof

    積読消化+開発合宿をしたら大失敗だった話 - 5.1さらうどん
  • C++11でjson扱うならdropbox/json11がよさそう - きょこみのーと

    Cocos2d-x3.0で使ってみました。その導入と実装例になります。 単純にCocos2d-xに組み込まれてるspine/json.hが自分的に使いにくかったので。。。 別に速度がウンタラカンタラとかそういう話ではないので、その辺のツッコミはご勘弁ください。。。OTL dropboxのgithub 以下のgithubになります。見るとわかると思いますがcppとhppしか無いので組み込みやすいです。 test.cppもあるので単純な使い方はそれみたら大体わかります。 https://github.com/dropbox/json11 Cocos2d-xへの組み込み手順 普通にダウンロードしてコピペでもいいと思います。 自分は、Classesディレクトリ以下に適当にmodulesってディレクトリ作成してgit clone submoduleにしました。 ちなみにgit cloneした場合は、

    C++11でjson扱うならdropbox/json11がよさそう - きょこみのーと
  • Ken Kobayashi CPP5

    C++によるプログラミング入門 クラスを作ろう こんにちは。いよいよ番です。 今日の内容を、初心者が理屈だけで、はじめから理解するのは難しいと思います。しかし、プログラミングは「習うより慣れろ」ということばがあてはまる世界です。解説をじっくり読むより、さっと読んで、サンプルをコンパイル・実行してみてください。今日のポイントは「とにかくコンパイル・実行」です。うまく動いたら、ごく簡単な改造をしてみてください。そのうち、いろいろ、わかってくることと不思議に思えることが、あらためて出てくることでしょう。そうなってから、今度はもう少しゆっくり解説を読んでみてください。 文字列をいれる「いれもの」や、整数をいれる「いれもの」は string name; int tosi; などと、作るのでした。このような「いれもの」を変数というのでしたね。このように「作る」ことを、業界用語では、「定義する」と言い

  • 文字列リテラル - mkubara.com

    概要 C/C++でよく記述する、ダブルクォーテーションで囲まれた文字列を文字列リテラルと呼び、プログラム実行時に利用する文字列を表現するために利用します。文字列リテラルは普段何気なく使っているにもかかわらず、その実装はなかなかに興味深いものです。稿はそれを記述していきます。 文字列リテラル 文字列リテラルとは C/C++ではダブルクォーテーションで囲まれた文字列を文字列リテラルと呼びます。リテラルとは質的には定数を表します。(定数として実装されているかは実装系依存です) コード: 文字列リテラル 文字列リテラルはプログラム実行開始時に、メモリ領域中の特殊な領域に文字配列として確保されます。よって領域定義としては char [] に近いものです。ただし我々が普段使っているスタック領域(関数内で変数宣言したときに使う)やヒープ領域(newやmallocで取得する領域)とは違った箇所に領域を

  • ゲームプログラミングのページ

    ゲームプログラミングのページへようこそ。 あなたは、30169(旧ページ)+ 人目の訪問者です。 旧・ゲームプログラミングのページ(http://hikari-hinomoto.hp.infoseek.co.jp/)は、 iswebのサービス終了に伴い、閉鎖されてしまいました。 このページは、XNA, Windows, DirectX, Android, Star, DoJa, BREW, GBA, NDSで ゲームを作成したい人向けに、PDF資料を公開しています。 古い資料が多いですが、なんらかの役に立つことを祈っています。 (一太郎で作っていますので、申し訳ないのですが、すべてPDFとなっています) XNA Andorid GBA NDS ES Game Libraryでゲームプログラミング超入門 オブジェクト指向でつくるゲームコンポーネント C++ Windows    Direct

  • Bullet Real-Time Physics Simulation | Home of Bullet and PyBullet: physics simulation for games, visual effects, robotics and reinforcement learning.

    Kubric is an open-source Python framework that interfaces with PyBullet and Blender to generate photo-realistic scenes, with rich annotations, and seamlessly scales to large jobs distributed over thousands of machines, and generating TBs of data. Kubric can generate semi-realistic synthetic multi-object videos with rich annotations such as instance segmentation masks, depth maps, and optical flow.

  • DXライブラリ置き場 ミニテク

    ここではDXライブラリに関するちょっとしたテクニックや、 DXライブラリとはあんまり関係ないちょっとしたテクニックなどを紹介します。 ウインドウモードで起動する ソフトのタイトルを変更する アーカイブ機能を使ってファイルを一つに纏める 数値をグラフィックで表示する 使えるC言語標準関数集 ソフトが完成したらDebugビルドではなくReleaseビルドを行い処理速度の向上を図る 自作ソフトにオリジナルアイコンを付ける BMPやWAVファイルだとデータが読まれてしまうので… 裏画面のすすめ ゲームの進行速度とリフレッシュレート 『前処理』のすすめ データ圧縮プログラムについてざっくり学ぶ ウインドウモードで起動する DXライブラリは標準ではフルスクリーンモードで起動しますが、開発中では ウインドウモードで起動したい時があります。何故ならフルスクリーンモードでは デバ

  • Linux C/C++ 自作ライブラリ作成環境の構築 - Qiita

    Help us understand the problem. What are the problem?

    Linux C/C++ 自作ライブラリ作成環境の構築 - Qiita
  • sprintf

    書式指定変換した出力を文字列に格納します 【書式】 #include <stdio.h> int sprintf(char *str, const char *format, ... ); 【説明】 書式formatにしたがって、printf関数と同様の変換を行った出力を、文字列strに格納します。 この関数を知っているのと知らないのとでは、文字列を編集する効率が全然違います。知らないと、文字列を編集するのに、strcat関数などを用い、とんでもない長文を書く羽目になってしまいます。 【引数】 char *str : 変換した出力を格納する文字列。 const char *format : 書式指定文字列。 詳しくはprintf関数を参照のこと。 ... : 可変個引数。この引数を書式指定に従い変換します。書式指定文字列はこの引数と同数必要です。 【戻り値】 成功時 : strに格納した文

  • ファイル入出力をごっちゃにしないために

    的には下に行くにつれてWindowsプラットフォームへの依存性が高くなります(例外もありますので注意)。以下に簡単な説明を述べておきます。 Cランタイムライブラリは、C言語で扱われていたファイル入出力の方法をサポートしますが、VC++等では表記の方法が少し変わっています。例えばCの関数であるopen関数の使用は推奨されなくなり、変わりに_open関数となっています(open関数でもコンパイルは出来ますがお勧めしません)。Cランタイムライブラリはさらに「低水準入出力関数」と「ストリーム入出力関数」に分かれます。低水準とストリームの違いは入出力に関して「バッファ」を扱うか否かで、ストリームの方がバッファを利用し高速に読み書きができます。バッファを使用せずOSを直接叩くのが低水準の方で、その分使い方が難しくなっています。 Cランタイムライブラリ(セキュリティ強化版)は、従来のランタイムライブ

  • ->、*、&、[]演算子って奥深いっすよ

    ホーム < ゲームつくろー! < C++踏み込み編 < ->、*、&、[]演算子って奥深い その1 ->、*、&、[]演算子って奥深い 「->」「*」「&」そして「[ ]」演算子は、ポインタ関連を扱う演算子です。これらの関係を曖昧に捕らえていると、関数の引数や戻り値、演算子のオーバーロードなどで大混乱を起こします。私は・・・起こしました(笑)。そこで、これら演算子の振る舞いをまとめてみました。頭で箱と矢印を描きながらご覧下さい。 ① メンバ選択演算子「->」は右辺値が大事 「->」これはメンバ選択演算子というのだそうです(MSDN)。アロー演算子と呼ぶ人もいます。これは「後置演算子」、つまり演算子の左側の値(左辺値)を使います。 メンバ選択演算子の左辺値に来ることが出来るのは通常「クラスのオブジェクトへのポインタ」です(「通常」じゃない場合については後述)。一般的なポインタ変数(int*型

  • charとUnicodeとワイド文字をごっちゃにしないために

    ホーム < ゲームつくろー! < C++踏み込み編 < charとUnicodeとワイド文字をごっちゃにしないために その4 charとUnicodeとワイド文字をごっちゃにしないために Visual Studio 2003あたりになってから、ちらほらと出てきたのが「Unicode」や「ワイド文字」という言葉。DirectXでもたびたびこれに苦しめられたりします。どうも世の中従来の1バイト文字からUnicodeへ過渡しそうな気配です。これらの文字の仕様については色々なサイトや辞書に詳しく説明されています。しかし、しっかりまとめないとやっぱり混乱してしまうもんなんです。「バイト文字をUnicodeに変換するのと、マルチバイト文字をワイド文字に変換するのは何が違うのか?」と聞かれたときに、すっと回答できますでしょうか?できる方はすばらしい。迷った方も大丈夫。世の中そんなもんです。 ここでは、c

  • [C++] Cocos2D-xでゲームを作る前の準備 - Qiita

    色々あって、チーム内で簡単なゲームを作りあって競おう、という話になりました。 プラットフォームやツールなどは自由なのですが、元々C++に興味があったのと、Cocos2D-xはやってみたかったので、思い切って挑戦することにしました。 とはいえ、そもそもC++を書いたことがほぼ皆無なので、色々調べるところからスタートです。 なので、C++というよりは、Cocos2D-xを触っていく仮定で出てきた疑問やメモなどがメインになります。 ちなみに今回作ったゲームは一番下にリンクがあるので、ぜひ遊んでみてください(๑'⌓'๑) 柔軟な配列を利用する C言語などでは通常、配列は固定長です。 しかし、最近の言語では柔軟に配列長を変えることが可能になっています。 C++ではstd::vectorやstd::list、std::mapなどの コンテナ と呼ばれる機能を使って実現するようです。 具体的な使い方は以

    [C++] Cocos2D-xでゲームを作る前の準備 - Qiita
  • C++11 - C++入門

    C++11 とは、2011年での最新のC++言語のISO標準です。言語の機能追加や標準C++ライブラリの拡張を行っています。g++やclang++で利用できます。新しい機能を利用するためには、新しいコンパイラが必要な場合があります。 読み方 C++11 しーぷらすぷらす じゅういち

  • OpenGL入門 : WisdomSoft

    ここで紹介されるプログラムは Microsoft Windows XP で動作確認されています ソースは Borland C++ Compiler 5.5 を用いてコンパイルされています 解説は OpenGL Version 1.1 に準拠しています。 この講座は ANSI C/C++ 及び GUI プログラムの開発経験者を想定しています