タグ

c++に関するlieutarのブックマーク (6)

  • #include の魔力 - Cube Lilac

    何気なく呟いた言葉が確変状態になっていました。 それで、反応を眺めていると「何をやってるか分からない」と言うものがいくつかあったので、一応簡単な補足説明を載せておきます。 #include は指定したファイルの内容をその位置に追加します。 1, 2, 3, 4, 5, 6, 7, 8, 9,例えば、上記の内容を hoge.csv と言う名前で保存して、 int hoge[] = { #include "hoge.csv" }; と記述すると、(プリプロセスが終了すると)以下のように記述した事と同じになります*1。 int hoge[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, }; このように、#include を利用することによって、内容が変化しない*2データ配列などの定義を自力で打ち込んだりコピペしたりせずに済むようになります(なることがあります)。s/int/co

    #include の魔力 - Cube Lilac
    lieutar
    lieutar 2010/09/18
    魔力つか、剛腕つか……
  • link集/ライブラリ系/C++ - NomisoBraaan Wiki

    C/C++向けのライブラリへのリンク集。 Top/link集/ライブラリ系/C++ link集/開発言語系/C++ 捜し物するなら、下記ページも利用可能。 link集/OpenSource関連#Info Microsoft VisualC++向けで COM(Component Object Model) を利用するなら、下記ページも利用可能。 link集/ライブラリ系#VB *1 link集/ライブラリ系#COM 各種ライセンスについては、下記ページも参照方。 link集/その他#license 関連ドキュメント Document/SourceForge.jp - SourceForge.jpの利用方法 Document/SourceForge.net - SourceForge.netの利用方法 Miscellaneous † 多機能過ぎて分類不能だがね・・・ ↑ OpenSource

  • スマートポインタ

    newでヒープに獲得したオブジェクトは、必要なくなった時に明示的にdelete開放しなければいけない。 開放し忘れた場合、メモリリークが発生する。 明示的なdeleteがプログラマの責任であることはプログラマにとって負担であり、生産性の低下にもつながりかねない。 必要のなくなったオブジェクトを確実に開放するための手段としてスマートポインタがある。 スマートポインタの基 スマートポインタは 開放する必要がある(つまりnewで確保した)オブジェクトを指すポインタ オブジェクトである。 スマートポインタのデストラクタで 対象のオブジェクトを開放するようになっ ているため、スマートポインタ自身が消去されると同時に対象のオブジェクトが 自動的に開放される。 std::auto_ptrを利用した例 #include <iostream> #include <memory> class Test

    lieutar
    lieutar 2008/06/17
  • C++ 再入門ブーム - NyaRuRuが地球にいたころ

    ロベールのC++入門講座を読んで C++ を初歩の初歩から再入門するよ - 前編 - ひげぽん OSとか作っちゃうかMona- 参考になりまする. const が出てきた。これ重要。 一応 const の例を全部書いてみよう。 const char* s = "hige"; // ポインタ s の指す先 変更不可 const char&r = s[0]; // r の参照先 変更不可 const int i = 1234; // i の値 変更不可 char* const p = "hige"; // p 変更負荷 以前『C++ と const 参照 - NyaRuRuの日記』でも書きましたが,const 怖いよ const な私のイメージはこんな感じ. s はアドレスの入った箱で,こいつを通しては変更不能.だけど指す先が不変値とは限らない. r は箱っぽい名札で,こいつを通しては変更不能

    C++ 再入門ブーム - NyaRuRuが地球にいたころ
    lieutar
    lieutar 2008/03/25
    コメント欄によると const method が重要なんだそうだ
  • [c/c++]死に至る言語

    →元ネタ  漢の言語 - みねこあ C++の何が難しいって、わかってないのに解ってるという奴が多いとか、実は自分もわかってませんとか、 そもそも適当に書かれると依存性高くなり過ぎなんだよ、バーロー。 ヘッダにちょっとメンバ関数を付け加えたら、 500ファイルビルドにいくとか阿呆だろ、バーロー。 リンクも時間かかりすぎなんだよ、 どうなってんだ、バーロー。 でも、そこが好き。(←頭に蛆虫がわいてきた) と、まさにid:minekoaさんも書かれているように、 C++は下手に書くと依存性が莫迦みたいに増える言語であり、 それをいかに低下させるかは永遠の課題と思われる。 記述順とかにこれほど気を遣う言語は他にないよね! 例えば、Pimplのようなコンパイラファイアウォールテクニックなどもあるが、 なかなかそううまくはイカンザキ、 であり、 friendともなかなか仲良し度を下げられない言語でもあ

    [c/c++]死に至る言語
    lieutar
    lieutar 2008/03/13
  • こども(てれび) - C++でSchemeインタプリタを作ろう

    少し作った。 (define (factorial n) (if (= n 1) 1 (* n (factorial (- n 1))))) ; ok (factorial 10) ; 3628800おー。Accelerated C++ と Effective C++ というを読んだんだけど書き方がわからないのでひげぽんのコードを参考に勉強しようとしたんだけど日記にコードは殆ど載ってなくてつかえねーと思いつつ書いた。そういう訳であんまり C++ の勉強にはなってないような。ポインタとか参照とかリソース管理とかがさっぱりわからない。メモリが駄々漏れ。 以下ソースコード main #include <iostream> #include <scheme.h> using namespace std; using namespace scheme; int main() { Environme

    こども(てれび) - C++でSchemeインタプリタを作ろう
  • 1