C89 ⊂ C++ だけど C99 ⊄ C++ だから、C 言語と言っても色々あることを考えないといけません。また、C# は C と似てないだけでなく、C# はオブジェクト指向言語だけど C++ はオブジェクト指向言語ではないので、C# が比較対象として出てくることが信じられないですね。C# が C++ と同類の言語だと思ってる人って多いんでしょうか?
C++ は C++0x から言語の方向性をジェネリックプログラミングの方へ大きく拡張させるので、このトピックで挙がっているどの言語とも似ていない言語にどんどん近付いていくと思います。
似てるとしたら Objective-C++ かな (スコア:2, 参考になる)
C89 ⊂ C++ だけど C99 ⊄ C++ だから、C 言語と言っても色々あることを考えないといけません。また、C# は C と似てないだけでなく、C# はオブジェクト指向言語だけど C++ はオブジェクト指向言語ではないので、C# が比較対象として出てくることが信じられないですね。C# が C++ と同類の言語だと思ってる人って多いんでしょうか?
C++ は C++0x から言語の方向性をジェネリックプログラミングの方へ大きく拡張させるので、このトピックで挙がっているどの言語とも似ていない言語にどんどん近付いていくと思います。
また、本文では挙がっていませんが、C++ を丸ごと含んでいるという意味で一番似ているのは Objective-C++ かな。
Kenta MURATA
Re: (スコア:1)
また、本文では挙がっていませんが、C++ を丸ごと含んでいるという意味で一番似ているのは Objective-C++ かな。
何を以って「似てる」と云うかに依りますが, あの角括弧だらけのソースを見て C++ と似ていると云うのは, 人によっては難しいのではないでしょうか?
Re:似てるとしたら Objective-C++ かな (スコア:1)
murakenさんがおっしゃっているのはObjective-CではなくObjective-C++です。
これは文字通り、Objective-CとC++の両方の記述方法を使えるという変態言語なのです(^^;)
C++ライブラリをOSXのCocoaアプリに流用するには便利ですが、双方のクラスに互換性が全くないので注意が必要です。
Re:似てるとしたら Objective-C++ かな (スコア:1)
それほど変態でもないですよ。使ってみると案外便利。"Objective-"の部分が明確にCやC++からみて違和感のある書き方なので完全に区別できるので、一つのソースで2つの言語が使える感じで便利ですよ。制限としては例えばidという名前のテンプレートが使えない(Objective-Cの id<Protocol>の書式とぶつかる)などの数点ありますが、気にするほどではありません。
Best regards, でぃーすけ
Re:似てるとしたら Objective-C++ かな (スコア:1)
あ、はい。実際お仕事で使ってますから、利点は承知してますー。
ただ、C++とObjective-Cの双方をそれなりに習熟しておく必要がありますから、新規に覚える言語ではないですよね。
C++かObjective-Cのどちらか(または両方)を知らない誰かがObjective-C++を学習しようとしていたら、阻止すべきでしょう(^^;)
そういう意味で、かなり変態なのではないかと。