タグ

C++とJavaに関するadvblogのブックマーク (5)

  • C系言語(C,C++,Objective-C,Java)で高階関数を使ってみる - WonderPlanet DEVELOPER BLOG

    はじめまして。エンジニアをしています、鷲見と申します。 今回は高階関数とラムダ式について書いてみようと思います。 高階関数とは 高階関数(こうかいかんすう,higher-order function)とは引数に関数を指定できたり、 戻り値として関数を返せる関数で、関数型言語などで使用されます※1。 高階関数を使用するメリットは、単純な関数を組み合わせることにより、 柔軟性の高いコードを書くことが出来るという点です。 高階関数の例として関数型言語Schemeのmap関数を見てみます。 map関数は、指定したリストのそれぞれの要素に対して同じ関数を適用する関数です。 例えばリストの要素を全て2乗したい場合は以下のように書くことができます。 ; xの2乗を返す関数を定義 (define (square x) (* x x)) ; リストの要素(1から5までの数値)を2乗する (map squar

    C系言語(C,C++,Objective-C,Java)で高階関数を使ってみる - WonderPlanet DEVELOPER BLOG
  • JavaとC++の比較 - Wikipedia

    この記事には複数の問題があります。改善やノートページでの議論にご協力ください。 脚注による出典や参考文献の参照が不十分です。脚注を追加してください。(2024年3月) 古い情報を更新する必要があります。(2018年12月) 独自研究が含まれているおそれがあります。(2018年12月) 雑多な内容を羅列した節があります。(2018年12月) C++Javaとの違いは、それら言語の歴史から辿ることができる。 C++はC言語の派生規格であり、手続き型プログラミング言語にクラス(抽象データ型)を導入し、静的型付けオブジェクト指向プログラミングを実現するために開発された。C言語の設計思想を維持・継承し、C言語の利点(機械語やアセンブラに準ずる高速性やハードウェア操作性など)を一切損なわないようにしているため、他のオブジェクト指向言語に比べてコードの実行効率や柔軟性を重視している反面、安全性は犠牲に

  • MergeDoc Project

  • Java プログラマに贈る C++入門(第 1 回)

    Java全盛の時代ではありますが、C++によって開発をしなければならない/した方がよい案件はまだまだ数多く存在します。その一方で、Javaからこの業界に入ってくる人がますます増えてきているのもまた事実です。連載では、これまでJavaでオブジェクト指向プログラミングを実践されてきた方が、ある日突然C++を使うことになったときのための学習ポイントを、筆者の実経験をもとにお送りしていきます。 目次 はじめに 開発環境の準備 Hello C++!! プログラムの入り口 メソッド と 関数 まとめ & 次回予告 1. はじめに 「Do you love Java?」 こう聞かれたら、読者の皆様はどう答えますか? 筆者は「Yes, I love Java : )」と、満面の笑みで答えます。 なぜなら、 Java は、 手続き型でプログラミングをしていた筆者に、 「オブジェクト指向の何たるか」を手取り

    Java プログラマに贈る C++入門(第 1 回)
  • enum-j.html#java_enum

    C言語によるプログラミングでは、列挙型(enum型)はたいへん良く使われます。 オブジェクト指向言語でも、それは変わらないようです。C言語を拡張したC++言語ではもちろん、Java言語でも、J2SE 5.0になってから列挙型が導入されたほどです。 その一方で、オブジェクト指向言語で列挙型を使う弊害も、繰り返し指摘されてきました。列挙型とswitch文を使ったソースコードは、ポリモーフィズムを使って書き直すべき典型的な悪い例として、しばしば取り上げられて来ました。 しかし、列挙型を使ったプログラムのすべてが、ポリモーフィズムを使って書き直すべきだとは限りません。継承によるポリモーフィズムは、オブジェクト指向の特徴の1つですが、サブクラスを作るべきではないケースもあるのです。そのような場合に、列挙型を使ったコードを書くことは、悪いことではありません。 ここでは、オブジェクト指向言語における列挙

  • 1