タグ

言語とC++に関するnokoribiのブックマーク (2)

  • いやなブログ: C のテンプレートでダックタイピング

    C++ のテンプレートでダックタイピング RubyPython などの動的な言語では、ダックタイピング (duck typing) というテクニックが多用されています。 ダックタイピングは、同じインタフェースさえ備えていれば型は何でも構わない、という考え方に基づく多態 (polymorphism) の手法です。アヒルのように見えて、アヒルのように鳴くなら、アヒルに違いない、というわけです。 そして、現在最も注目を浴びている言語である C++ でもテンプレートを用いるとダックタイピングを行えます。 ダックタイピングを使うと、継承関係を無視して多態的にオブジェクトのメソッドを呼び出せます。たとえば、次の Ruby のコードでは、func に Duck と Foo のどちらのオブジェクトを渡しても正常に動作します。これは Duck, Foo ともに、共通のインタフェースを持つ quack

  • @IT:特集:Visual C++ 2005 いままたC++が熱い!「C++/CLI」として大進化したVisual C++ 2005

    Visual C++ 2005とC++/CLIという解決 新しいプログラム言語であるC++/CLIは、C++マネージ拡張の進化形と位置付けることができる。しかし、単なる進化形ではない。現在、ヨーロッパの工業標準化団体であるECMAによって標準言語として制定作業中である。もちろん、標準を名乗る以上、C++/CLIが対象とする実行環境はWindowsでも.NET Frameworkでもなく、国際規格である「ISO/IEC 23271:2005, Common Language Infrastructure(CLI)」である。 C++/CLIが、Visual Basic .NETと同じように「C++/.NET」というネーミングではない理由はここにある。対象としている実行環境がCLIなので、C++/CLIという名前になるのである。つまり、CLIの実装あるところどこでもC++/CLIは利用可能となる

  • 1