タグ

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

タグの絞り込みを解除

プログラミングとCに関するoutland_karasuのブックマーク (3)

  • 【C++】なぜヘッダと実装はわけるべきなのでしょうか(.hに実装を書くことは邪道か)

    私はC++歴3年の学生趣味プログラマーです。 「C++はなぜヘッダと実装を分けなくてはならないのか/そもそも当に分けなければならないのか」という質問です。 C++といえば、ヘッダー部と実装部を.hファイルと.cppファイルに分けることが一般的とされている言語ですが、 これは同じオブジェクト指向言語のC#やJavaにはない特徴です。 そのせいでC++使いたちは今日もcppファイルとhファイルを行ったり来たりしながらコーディングする羽目になっています。(そしてVS使いはF12とCtrl+-を得意気に連打しています。) 私にとってもそれが当たり前になって久しいですが、 時々C++を学び始めたばかりの後輩から「なぜヘッダファイルに実装を書いてはならないのか」「なぜC++は二度も同じコードを書くことを強いるのか」と質問を受けます。 私はそのたびに「実装の隠蔽化」とか「循環参照の危険が云々」とか「そ

    【C++】なぜヘッダと実装はわけるべきなのでしょうか(.hに実装を書くことは邪道か)
    outland_karasu
    outland_karasu 2015/06/09
    C/C++では定義と宣言が別のものとして考えられていて、宣言を書くのがヘッダで定義を書くのがソースファイルという事じゃないかな。リンカの動作も絡んできそう。新しい言語は宣言を自動生成してる。
  • ゲームプログラミングにおけるC++の都市伝説 - ソフトウエア研究会in秋葉原 - PukiWiki

    ゲームプログラミングにおけるC++の都市伝説 † この記事は、C++ Advent Calendar 2012 22日目の記事です。 Prev 21日目の記事 CEANによる配列操作 Next 23日目の記事 構造化並列プログラミング 時間の関係で3つの都市伝説しかご紹介できませんでしたが、またの機会があれば他の都市伝説についてもお話したいと思います。 2012/12/22 written by h.godai @hgodai 目次 初めに 都市伝説1 C++は遅いのでゲームには向いていない 都市伝説2 boost::poolはゲームには向いていない 都市伝説3 boostライブラリは怪しいライブラリだ。使うと呪われる。 ↑ 初めに † かつて、8bit時代はゲームのプログラムはアセンブラが主流でした。やがて、ゲームのプラットフォームが16bitから32bitになるに従い、C言語でゲーム

    outland_karasu
    outland_karasu 2012/12/23
    C++も随分速くなったんだな~。「テンプレートでインライン展開だからCより速い」というのは長らく理想論だったけど、いつのまにか現実になっていたのね。
  • C 言語や Windows プログラミングはこのようにして習得した Part 1 - 登 大遊@筑波大学大学院コンピュータサイエンス専攻の SoftEther VPN 日記

    あまり参考にならないと思いますが、私がどのようにして C 言語や Windows プログラミングを習得したのかを書いていこうと思います。 C 言語を勉強しなければならないと思ったのは、中学 1 年生の 4 月でした。多くの中学校、高校にもあると思いますが、私が入学した「高槻中学校・高等学校」にもパソコン部のようなものがあり、そこでは C 言語が流行していました。 C 言語が流行していたといっても、「C 言語が良いらしいぞ」という言葉が流行していたという程度であり、誰か C 言語によるプログラミングがものすごくできて人に教える能力がある程度の生徒や教員がクラブにいた訳ではありません。当時、クラブでは PC で動作するフリーウェアのゲームが多数流行っており、放課後や昼休みなどに皆で必死にゲームをして遊んでいました。そのときに流行っていたゲームの 1 つに、以下の「Flying Jump」という

    C 言語や Windows プログラミングはこのようにして習得した Part 1 - 登 大遊@筑波大学大学院コンピュータサイエンス専攻の SoftEther VPN 日記
    outland_karasu
    outland_karasu 2011/10/13
    僕の辿ってきた道と近い気がする。APIリファレンスがまた中途半端でDIBセクションとか扱う方法が分からなかった。
  • 1