Learn up-to-date, idiomatic C++ with code examples, concise explanations, cheat sheets and infographics. -- Lerne aktuelles, idiomatisches C++ mit Code-Beispielen, knappen Erklärungen und Infografiken. -- 学现代的C++ // 代码示例,简洁的说明和图表
はじめに Pythonは今最も習得希望人口の多い言語である。 それはヘビーなデベロッパーからライトなオフィスコンピューティングまで多岐にわたる。 おそらく「Pythonを使えば○○ができる」と喧伝されているのを見聞きしているからだろう。 この記事ではそんなPythonを一から導入し開発できるようにすることを主にする。 OSのセンテイ Pythonの開発でもっとも優れたOSはWindowsである。 単純にPython.orgの公式から対象のバージョンをいくつか選んでダウンロードして適当にインストールすればそれですべてを始められるので、MacやLinuxのようにシステムデフォルトと別verとのインストール共存やパッケージ管理ツールを意識する必要はない。 パスは通るし、複数のバージョンを同時に入れてもビルドバージョンですら分けて共存できるので簡単。 処理系 Pythonはインタプリタ界の変態言語
この記事について C++未経験者が一年間かけてC++を勉強した軌跡と学んだことを紹介します。 C++は参考書に書いていない様々な落とし穴があります。初心者の方はこの記事を参考にすることで、知らずにバグを埋め込んでしまうことを防ぎましょう。 C++を勉強する前提 元々のプログラミング歴 筆者はC++を勉強する前は次のような少しのプログラミング経験がありました。C++を勉強することによりプログラミングの基礎が身につき今ではRuby,Pythonなどモダンな言語もすぐに身に着けることができました。 大学の教養の授業で教養にてCでハローワールドと入出力を勉強 1ヶ月のJavaプログラミング研修 C#開発半年 本記事で参考とする規格 初心者C++erを対象とした記事ですのでC++の規格(バージョン)を解説します。C++の規格は下記の様に複数あります。 C++98(C++03) C++11 C++14
CERT C コーディングスタンダード 日本語翻訳版コーディングスタンダードのご利用条件/著作権・免責事項 00. はじめに 01. プリプロセッサ (PRE) 02. 宣言と初期化 (DCL) 03. 式 (EXP) 04. 整数 (INT) 05. 浮動小数点 (FLP) 06. 配列 (ARR) 07. 文字と文字列 (STR) 08. メモリ管理 (MEM) 09. 入出力 (FIO) 10. 環境 (ENV) 11. シグナル (SIG) 12. エラー処理 (ERR) 13. Application Programming Interface (API) 14. 並行性 (CON) 49. 雑則 (MSC) 50. POSIX (POS) AA. 参考情報 BB. Definitions CC. 未定義の動作 DD. 未規定の動作 XX. お問い合わせ 00はじめに このページ
Batavia会議は、だいぶ興味深いことになった。詳しくは、正式なNのペーパーが出てから解説するが、とにかく、非常に重要な項目をふたつだけ解説する。 まず、attributeによって提供されていた多くのクラスのメンバーに関する機能は、キーワードを与えられた。これは、言語機能は、特別な文法を与えるに値するという思想からである。会議でコンセンサスの得られた文法は以下の通りである。 struct Base { virtual void f() { } int x ; } ; struct Derived final explicit : Base { virtual void f() override { } int x new ; } ; 機能はattributeで提供されていたものと全く変わらないので、説明は省く。変更点としては、base_checkのかわりにexplicitを使い、hidi
私は基本的に、C++でソース書くときはやたらめったらconst付けます。 なぜならHaskellが好きだからです(ぇ じゃなくて、状態の変更によるバグを減らすためです。 しかし、他人が書いたソースを見てると、オブジェクトのconst操作を考えて設計されてないことが けっこうあり、Is〜とかGet〜といった名前の関数の中でメンバの状態を変更してたりします。 これはとくに、JavaやC#のようなconstメンバ関数がない言語からC++に移植するようなときに 起こりやすいのですが、C++でもconstメンバ関数の存在を知ってか知らずかconstが付いてないことが多々あります。 書籍でいうと、『Game Programming Gems』では明らかにconst操作なメンバ関数にconst付いてないですね。 C++で大きなプログラムを組む際は、元となるコード(移植元やライブラリ)がオブジェクトのco
科学者とあたまを書いたひとだけれども、この名前どっかで聞いた事があるなと思ったら, 昨日劇団青年座の人の講演で聞いたのだった。 「フユヒコ」という劇団青年座の公演が明日NHKで放送されるらしいです。冬彦ってのは寺田寅彦のペンネームらしい。 http://cgi4.nhk.or.jp/hensei/program/p.cgi?area=001&date=2008-12-12&ch=31&eid=9950 おもしろそうだから観てみようかな。 ところで小柴先生が同じような事を言っていたのを思い出した。このインタビューは面白い。 一流の理論家は、「自分の理論では、ここまでは使えるけれど、これから先は分からない」という適用限界をいつも意識している。ところが二流の理論家というのは、自分が名前を覚えた、あるいは、使った理論で何でもやれると思ってしまう。二流の理論家に困らされるのは、新しい実験計画が出てき
TopCoderの為に少しやる気になってきたところで、Macでフリーで使える C++ のテストフレームワークをいくつか試してみたのでメモ。 CppUnit - C++ Port of JUnit CxxTest googletest - Google C++ Testing Framework Boost.Test CppUnitはテストの記述が若干面倒な気が。表示はシンプルで悪くない。 CxxTestはインストール方法が他と違って少し悩んだが、記述量が少なくて取っつきやすかった。 googletestは記述量が少なめで、赤と緑のカラー表示コンソールで、マクロの種類も豊富。ASSERT マクロと EXPECT マクロの対応も分かりやすい。但し、出たばかりで日本語での情報が少ない。 Boost.Testは普段Boostに慣れ親しんでいるなら良いかも。マクロの種類は多め。 とりあえず、goog
# ZDNetに掲載されたポインタに関する記事が、サンプルコードでメモリ破壊を起こしている事に加え、本文にも多数のミスがあり、最大限希望的に見ても「ちょっとした勘違い」では済まされない内容になっていた。ここまででも相当に悲惨だったのだが、これを突っ込まれた後のコメント欄での対応が、さらに輪をかけて悲惨だった。以下、概要。 - int main( void ) { int *n; *n = 5; /* ここでメモリ破壊 */ printf( "%d\n", *n ); return 0; } - コメント欄 #1 サンプルコードでメモリ破壊を起こしている旨が指摘される。 #3 編集部からの返答。メモリ破壊の問題を無視したまま、別の部分を何箇所か訂正。 #4 沖林「ご指摘を元に記述を見直しましたが、至らないところがあれば、今後とも引き続きご指導願いたく存じます。」 #5 メモリ破壊の件を完全に
ネタ元→C/C++ 免許制はどうですか?/C/C++ 免許制 その 2 最初に感想を書いておきます。 「自社で試験と規定作って自社内でその規定を守ればいいと思う。」 (但し、腕があったら免許制大賛成するんだけどね。無免許でBJ先生の如く法外な金額を取って仕事するw) そして、実は免許制になったら免許取るか仕事辞めるか2者択一になるだけだから本当はどうでもいい。僕は多分後者。今更そんな試験受けたくない。 仕事辞めたら「不遇な仕事をするプログラマ」と「旬を過ぎたキャバ嬢」が愚痴れる1杯飲み屋をやりたいと思ってます。 ・免許ではなく技術力を客観的に見られればいいのね 免許となれば法整備が必要になる。当然無免許でその業務を行った者への罰則規定がなければ免許そのものに意味がないからだ。 コンピュータ言語如きの為に法整備をするのも大袈裟すぎるし、技術のモノサシが欲しいのであれば情報処理技術者試験のよう
はじめに Adobe から C/C++ で書いたコードを Flash や AIR で動かす Alchemy というものがリリースされましたね! Alchemy - Adobe Labs これはすごい!ということで、少し試してみたいと思います。 その様子をリアルタイムに書いていきます。ちゃんと出来るかな 環境 OS は Mac OS X で gcc 、 java は入っているものとします。 ホームディレクトリ(/Users/amachang)に AlchemyTest というディレクトリを作って作業します。 インストール まずは、いろいろインストールします。 Flash Player 10 Debugger Version Adobe Flash Player - Debug Downloads ここからダウンロードしてきて、普通にインストールします。 Flex SDK 以下から Flex
The C++ Programming Language プログラミング言語C++は1998年に発行され2003年に改訂された国際標準ISO/IEC 14882を仕様として採用している。ISO/IEC 14882はC++の言語仕様と標準ライブラリの双方を規程しており、1998年に規程されたものは通称C++98、2003年に改訂されたものは通称C++03と呼ばれている。現在、JTC1/SC22/WG21 - The C++ Standards Committeeにおいて次期C++仕様"C++0x"の策定が進められている。最終的に12年ぶりに新しいC++が登場ということになりそうだ。 C++0xはC++98/03との互換性は確保しつつ、言語仕様と標準ライブラリの双方の規約を改訂するもので、新しい機能として並列プログラミングのサポートやプログラミングの簡素化、関数プログラミング機能の強化、ジェネ
いまさらハマったおwwなんでいまさらハマるのww泣いたww #include <iostream> class Parent { virtual void say() { std::cout << "親だお!" << std::endl; } public: Parent() { say(); } }; class Child : public Parent { virtual void say() { std::cout << "子だお!" << std::endl; } public: Child() {} }; int main() { Parent parent; Child child; return 1; } 結果: 親だお! 親だお! コンストラクタとイニシャライザの違い C++で遊ぼう「静的仮想関数」編
型変換については、第4章で簡単に説明しましたが、複雑な規則があり、迷うことの多い部分です。ですから、ここで少し詳しく算術型の型変換について説明してみようと思います。 なお、説明中で用いたコードの実行結果は「Borland C++ Compiler 5.5」(int:4バイト short:2バイト char:1バイト)で確認をしています。 1.汎整数拡張 文字型や整数型などの汎整数型の場合、型が、int より小さな場合(char, signed char, unsigned char, short, unsigned short)は、演算の最初に int か、表現できなければunsigned int に変換されます。このとき、符号を含めてその値を変えることはありません。 (例)short a = 30000, b = 30000; printf("sizeof(a) = %d\n", siz
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く