タグ

C++に関するzephyrcradleのブックマーク (26)

  • プログラミング言語人気TOP10の簡易解説

    0-1. 前書き この世にはたくさんのプログラミング言語が存在します。Wikiepdiaのプログラミング言語一覧を見ると、実に200個以上というわけの分からない数の言語が並んでいたりします。 【参考URL】プログラミング言語一覧 - Wikipedia http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%... 200の中にはほとんど使われてない言語も混じってるので、実際に仕事でざくざく使われている言語は20とか30とかそういうオーダーなのですが、それでも1人の人間が把握するにはちょっと多過ぎる数です。 記事では、そうした有り余るプログラミング言語の海の中で「どれを勉強したらいいの?」とか「どれを採用するのが適切?」という悩みをお持ちの方が「よし、この言語に決めた!」と自信を持って決断できるように背中を押すことを目的として書か

  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年10月時点の調査。

    zephyrcradle
    zephyrcradle 2010/01/30
    浮動小数点は比較に==とか不等号とかそのまま使っちゃダメですよ的なお話。
  • 抽象データ型 - Wikipedia

    出典は列挙するだけでなく、脚注などを用いてどの記述の情報源であるかを明記してください。記事の信頼性向上にご協力をお願いいたします。(2022年5月) 抽象データ型(ちゅうしょうデータがた、英: abstract data type、ADT)とは、データ構造とその操作手続きを定義したデータ型、またはデータ抽象[注釈 1]の方法の1つ。通常のデータ型であれば変数宣言で変数に束縛されるものは値であるが、抽象データ型の世界において値に相当するものはデータ構造とその操作[注釈 2]のまとまり[注釈 3]である。 抽象データ型を用いない場合、データ構造またはデータの操作手続きのアルゴリズムの変更を行うとソースコード中にその変更部分が散在してしまい規模によっては修正困難となるが、データとその操作がひとまとめに記載されることになる抽象データ型においては、型の定義における実装部分を変更するだけで修正が完了す

    zephyrcradle
    zephyrcradle 2009/06/13
    ADTと略すらしい。
  • OpenCV.jp

    Reference Manual OpenCV-2.x(svn) C: リファレンス日語訳 C++: リファレンス日語訳 OpenCVチートシート(C++)(訳) OpenCVユーザガイド(訳) Python: リファレンス日語訳 Google Test-1.6 Google Test ドキュメント日語訳 Google Mock(svn) Google Mock ドキュメント日語訳 OpenCV-2.2(r4295相当) C: リファレンス日語訳 C++: リファレンス日語訳 OpenCVチートシート(C++) (訳) Python: リファレンス日語訳 OpenCV-2.1(r2997相当) C: リファレンス日語訳 C++: リファレンス日語訳 OpenCVチートシート(C++) (訳) Python: リファレンス日語訳 OpenCV-1.1pre C/C++:

  • GNU リンカ LD の使い方: Invocation

    2.1 コマンド行オプション このリンカは, 多数のコマンド行オプションをサポートしているが, 実際には, そのほとんどがどの特定の文脈でも使われることがない. 例えば, ld の使われ方で多いのは, 標準の, サポートされている Unix システム上で標準の Unix のオブジェクトファイルをリンクすることである. このようなシステムで hello.o というファイルをリンクするには 以下のようにする. これは, ld に, ファイル /lib/crt0.o と hello.o, ライブラリ libc.a をリンクした結果として output という ファイルを生成することを指定する. ここで, ライブラリ libc.a は 標準の検索ディレクトリから得られる. (以下の `-l' オプションの説明を参照のこと. ) ld のコマンド行オプションのいくつかは, コマンド行の

    zephyrcradle
    zephyrcradle 2009/05/30
    GCCは知っててもLDって中々触らないからオプションをぱっと思い出せない。
  • volatileによる多重定義::実装技術

    2005-09-25 μITRONのようなマルチタスク環境でC++を使う場合、静的なオブジェクトの操作や、クラスのメンバ変数の操作では排他制御が必要になることが多いと思います。しかし、参照やポインタを引数として受け取る関数や、クラスのメンバ関数を、何でもかんでも排他制御しようとすると、大きなオーバーヘッドになってしまいます。 そんなとき、volatile修飾子による多重定義が役に立ちます。volatile修飾子は、構文上はconst修飾子と対等の関係にありますから、volatile参照やvolatileポインタに対して関数を多重定義することもできますし、volatileメンバ関数を定義することもできます。 具体的な例として、オブジェクトの値を入れ替えるためのswap関数について考えてみましょう。標準C++ライブラリが提供しているstd::swap関数は、原則としてマルチタスク環境にには対応

    zephyrcradle
    zephyrcradle 2009/05/27
    普通にvolatileと非volatileって別の型扱いだもんね。
  • プログラミング言語 C の新機能

    7. 文法一般 この章では C 言語に新たに加えられた指示付きの初期化子や複合リテラルといった文法や、暗黙時の宣言に関する変更といった、変更された文法について説明します。 7.1 暗黙の関数宣言 現在の C 言語の規格では、ある関数から他の関数を呼び出す時、とくにその関数のプロトタイプを宣言しなくても使用することができました。例えば stdio.h を読み込まずに、printf を使用するといったことです。しかし、今度の C 言語ではそのような場合、その関数の呼び出しは規格上未定義の動作となります。ただ実際には多くの処理系では警告を出してコンパイルするよう実装されることでしょう。この辺の機能は C++ に近くなっていますね。 7.2 宣言時の暗黙の型 手続き型言語では、一般的に変数や関数などを宣言して使用する必要があります。もちろん C 言語も例外ではありません。しかし C 言語では特に型

    zephyrcradle
    zephyrcradle 2009/05/24
    C99で追加された機能の話。ブクマしてなかった。
  • C++編(言語解説) 第30章 内部クラス

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

    zephyrcradle
    zephyrcradle 2009/04/15
    インナークラス、無名クラスについて。
  • サービス終了のお知らせ

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

  • サービス終了のお知らせ

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

    zephyrcradle
    zephyrcradle 2009/02/13
    実はC++のSTL全然知らないので。
  • デストラクタを仮想関数にしたとき動き(2)

    [戻る] wave 2008/06/11(水) 10:28:20 MSVS2008で以下のソースを実行すると落ちます。MSDEV6.0でも同じです。 理由がわからず困っています。よろしくお願いします。 class A { public: A(); ~A(); }; A::A() { cout << "A()"; } A::~A() { cout << "~A()"; } class B : public A { public: B(); virtual ~B(); }; B::B() { cout << "B()" ; } B::~B() { cout << "~B()" ; } void Test() { A* b = new(B); delete b; } --------------------- Debug Assertain Faild

    zephyrcradle
    zephyrcradle 2009/01/27
    あとで読もう。
  • C++でMix-inもどき(多重継承はそんなに悪いのか)

    はじめに プログラム例 クラスの機能の拡張 純粋仮想関数 vs デフォルト実装 インターフェースをまとめる C++ vs Java まとめ:多重継承は悪くない はじめに Javaではinterfaceを使って個々のクラスに共通する インターフェースを抽出する方法があります。 これをC++でやるには各クラスの共通の関数の宣言を 抽象基底クラスで行い、個々のクラスはそれらを(多重) 継承して実装するという方法があります。 Rubyではさらに実装ごとモジュールに抽出し、 それをクラス,モジュールにインクルードして使う というMix-inという機能があります。 実装ごとモジュールとして分離されるために再利用性が高まる、便利な機能です。 これと似たようなことをC++でやる方法を考えます。 プログラム例 これはモジュールMをクラスAにインクルードする場合の例です。 // "m.h" class M {

  • 配列へのポインタと配列へのリファレンス - bkブログ

    配列へのポインタと配列へのリファレンス C/C++ のあまり使われない機能に、配列へのポインタと配列へのリファレンスがあります。ここでは、それらがどのようなものかまとめたいと思います。 C 言語には配列の先頭要素へのポインタとは別に配列へのポインタ が存在します。。プログラミング言語Cの 5.7 に多次元配列を受け取る関数の例が載っています。 次のプログラムではサイズ 256 の char 型の配列を作り、その配列へのポインタ p を作っています。++p を実行すると p の指すアドレスは 256 バイト分進みます。 #include <stdio.h> int main() { char foo[256]; char (*p)[sizeof(foo)] = &foo; printf("%p\n", p); ++p; printf("%p\n", p); // 256 バイト分進む ret

    zephyrcradle
    zephyrcradle 2009/01/05
    「/C++ のあまり使われない機能に、配列へのポインタと配列へのリファレンスがあります。ここでは、それらがどのようなものかまとめたいと思います」ほえー。
  • ヒビノアワ: 「ゲームプログラマになる前に覚えておきたい技術」を買った

    屋で見かけて、財布の中身と相談して、一度はあきらめて帰ったものの、やっぱり、どうしても、欲しくて購入した。 なにしろ、5000円弱。高い。 そして、軽く腕力を鍛えられそうなくらい厚くて重い。 しかし、これ、ものすごい良書なんじゃないか? まだ、そんなに読みすすめてはいないんだけど、とにかく、書きっぷりがいい。 ゲームを作るために必要な知識をもりもりと詰め込み、それをばっさばっさと解説していく。 「僕はこう書く、でも、もっといい方法は自分で見つけろ」なんて言ってみたりもする。 ゲーム作りをする新人を育てようとする、すごい熱気。 セガの新人教育カリキュラムから生まれたゲームプログラミングの解説書です。C++の初歩のスキルがある人向けに、パズルや2Dグラフィックスといった比較的簡単なゲームの作り方から、ゲームに絵を取り込む方法、シーケンス遷移、アクションゲーム、平面の衝突処理、入力装置のコント

  • C++0x - Google 検索

    www.ibm.com › docs › topic=directives-c99-preprocessor-features-adopted... C++0x 標準では、C および C++ コンパイラーに対して共通プリプロセッサー・インターフェースを提供するために、複数の C99 プリプロセッサー機能が採用されています。

    zephyrcradle
    zephyrcradle 2008/11/14
    「プログラミング言語 C++ の次期標準として、2009年発行に向け策定中の改訂案を指す仮の通称である」
  • プログラミング覚書

    ここでは C++Windows でのプログラミングに関する Tips 等を書き留めていきます。Windows の方は所々 MFC の話も混ざっています。draft なので、内容が変わる場合が多々あります(言い訳)。口調が違うところも所々に見つかりますが、気にしないで下さい。

  • ブール値を返すメンバー関数の命名規則

    関数の名前の付け方は人それぞれですが、使う単語が同じなら、関数の名前はほぼ同じものになると思います。例えば、サイズをセットする関数の名前を、「set」と「size」という単語を使って考えると、ほぼ全員が「SetSize」と答えるでしょう。「SizeSet」「SizeToSet」「SizeSetted」「SettingSize」といった名前を考える人は、ほとんどいないと思います。 ところが、真か偽かのブール値を返す関数の名前は、混乱することが多いようです。 ここでは、Java言語で採用されている命名規則と、その解釈の仕方を紹介します。 関数名が混乱する例 ブール値を返す関数では、「Is○○」という名前を良く見かけます。例えば、中身が空っぽかどうか、の判定をする関数には、IsEmptyという名前が良く使われます。MFCのCStringクラスや、JavaのListインターフェースなどにも、IsE

  • 開放/閉鎖原則 - Wikipedia

    開放/閉鎖原則(かいほうへいさげんそく、open/closed principle、OCP)とは、オブジェクト指向プログラミングの設計への提言である。 ソフトウェア要素(クラス、モジュール、関数など)は、拡張に対しては開いており、修正に対しては閉じているべきである。 software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification.[1] この原則に従っていれば、ソースコードの修正をせずとも、各要素の振る舞いを拡張することが可能になるとしている。 この開放/閉鎖の原則は、1988年にバートランド・メイヤーが提唱したものと、1996年頃にロバート・C・マーチン(英語版)らが提唱したものの二通りがある。どちらも継承やポリモーフィズムによる

    zephyrcradle
    zephyrcradle 2008/10/07
    「クラス(およびその他のプログラム単位)は 拡張に対して開いて (open) いなければならず、修正に対して閉じて (closed) いなければならない」
  • Javaの道:クラス(9.オーバーライドとオーバーロード)

    オーバーライド オーバーライドとはスーパークラスにおいて定義されているメソッドを、サブクラス内で再定義することを言います。スーパークラスのメソッドを変更することはできないが、サブクラスに特化した機能を付与したい場合に使用します。 オーバーライドを定義する際には以下の規定があります。 オーバーライドする側はオーバーライドされる側と戻り型、メソッド名、引数型、引数の数が同じでなければなりません。どれか一つでも異なる場合はオーバーライドとは見なされません。 オーバーライドされる側のメソッドに指定されるアクセスレベルより厳しい制限を持つアクセスレベルをオーバーライドする側のメソッドに付与することはできません。例えばオーバーライドされる側のメソッドにprotectedが指定されている場合、オーバーライドする側のメソッドにprivateを指定することはできません。 オーバーライドされる側のメソッドに指

    Javaの道:クラス(9.オーバーライドとオーバーロード)
    zephyrcradle
    zephyrcradle 2008/10/06
    基本だけど。
  • デザインパターン編 トップページ●Programing Place

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

    zephyrcradle
    zephyrcradle 2008/10/06
    デザインパターンについて、C++のサンプルコードを交えて網羅されてる。ちゃんと読まなきゃなあ。