A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
違いか~、簡単に挙げると
①VM: C++ 使わない。C#:.NETのVM(CLI)上で動作
②GC(ガベコレ): C++ 使わない。C#: 使う。
③多重継承:C++: 可能だが使い方が難しい場合がある。C#: 無し。
④OOP: C++: Cに付加する形。C#: OOPしか許さない。
⑤プロパティ、イベント C++: 無し、C#: 有。
C++ は C にクラスを付けてみようという発想から始まった
かなり古い言語。ヘッダファイルで型情報を共有とか
他の言語では廃れてしまったやり方を未だに踏襲してます。
C#は元々ほぼ Java のコピーから出発した言語。
.NET Framework の主力言語で、Java と機能を競って
発展を続けてます。javaと違って RAD なGUIのサポートのため
プロパティやイベント(delegate)なども備えてます。
C# は VM と GC を使うので、組み込み系など、H/Wに近い
レベルの開発は無理。WindowsもC++で書かれていますね。
C++は利用者に高い能力を要求するので、下手なコードを書くと
よくわからない動作をして利用者を困らせます。
たくさんのベストプラクティス身につけないと人に迷惑を
かけやすい玄人向けの言語です。
蛇足:
VC++/CLI は、C++だけど VM/GC を使える C++ で、
NativeとVM用のコードを混在して書ける超変態言語です。
でも、.net と native の間をつなぐのにとても重宝しました。
No.5
- 回答日時:
開発需要にあわせた進化だと思います
C → C++ → C#(C++++)
進化に伴い、
・安全なプログラムを書けるようになってきました
・フレームワーク、パッケージが充実してきてゴリゴリ書かなくてもいろんなことが比較的簡単に実現できるようになってきました
・他の今時の言語、それを取り巻くエコシステムとの協調が楽にできるようになってきました
未だC++、そのエコシステムを使った方がコスト的に有利な開発は沢山あります。ですが、そのようなある意味特殊な開発分野以外はイマドキ、C++を使う必要はありません(と思います)
No.4
- 回答日時:
ざっくり的な回答はNo.1さんがされていますね。
追加して書けば、
・マイクロソフトは、「できるだけC#を使ってほしい!」という意向があります。どーーしてもC++じゃあないとダメって場合だけC++を使って欲しいということのようです。
・C++は、Cで記述するのが難しい複雑なプログラムを記述するために生まれました。Cよりも簡単なように見えるところもあるのですが、実際にはCよりも5倍から10倍も難しいと思います。
「Cがちょっと進化した言語」と甘くみると痛い目を見ます。
なお、STLってうまく使えば、とても役にたつので、C++が嫌いでも、STLが好きになる方がいるのは分かりますね。
日本での業務系のソフト開発では、ソフトの作り易さ、それにマイクロソフトの意向もあってC#が選ばれると思います。
C++を使うことはまず無いと思います。
リアルタイム系、組み込み系となるとC++でしょうけどね。
No.3
- 回答日時:
C#はMicorosoftの.NET技術を基盤とした言語で、C++はそうじゃない言語です。
ざっくりとした違いという意味で。
>気をつけるべきところはありますか?
メモリ管理の考え方とかC#と全然別物なので、一から覚え直しくらいに思ったほうが良いかと。
>コードの書き方としてはC++とCは同じということと考えていいのですか?
C言語も変化しているので、C++自体と別言語としてとらえるのが技術的には正確ですが、まあそんなところで良いのでは。
>C++ は使いやすくなったC言語。
こういういい方は、あまりしないと思います。
No.2
- 回答日時:
> また、C++ は使いやすくなったC言語。
いや、「使いやすくなった」って事は違うんじゃないかな。
むしろある意味「ややこしくなった」C言語、とは言えるかもしれんですが。
世の中、必ずしも「新機能追加!」が「使いやすくなった!」とは同義ではないのです。
> つまり、コードの書き方としてはC++とCは同じということと考えていいのですか?
上手いC++の書き方は「殆どCのコードにちょっとだけC++の書き方を混ぜる事だ」たぁ言われてますけどね。
バベル案内:
http://www.aoky.net/articles/steve_yegge/tour_de …
No.1
- 回答日時:
何だろね。
はて。C#ってC++++のつもりで名付けたらしいんですが(笑)、実際はC++よりはJavaに近いんじゃないの?分からんけど。
・C#ではポインタが隠されてるけどC++だと悪名高いポインタが出まくりである。
・C#はJavaと同様に、仮想マシン(VM)向けにバイトコードを吐き出すコンパイラを持っているが、C++はネイティブコード(いわゆる機械語)を吐き出すコンパイラを用いるケースが多い(必須ではない)。
・C#はJavaと同様に、基本的にはユーザーにオブジェクト指向を強要する。反面、C++はオブジェクト指向も「使える」が、別にユーザーにそれを強要する事なく、C的なフツーの手続き型言語の書き方も可能。あるいは、STLと言う標準ライブラリの一つを使えば、擬似的だが関数型言語な書き方も可能な「マルチパラダイム」の言語である。
ってのがざっくりとした違いかなぁ。ホントざっくりだけど。
> 夏休みに入った今にC++も学ぼうと思っているのですが、気をつけるべきところはありますか?
ゴメン、あんまC++は詳しくないんだ。
でもC++のSTL、ってのは面白いと思う。多分STLを中心に学んだ方がエキサイティングかしらん。
Standard Template Library:
https://ja.wikipedia.org/wiki/Standard_Template_ …
実はSTLって殆どC++から独立してるようなライブラリなんですよ。実はこれ自体でほぼプログラミング言語として完結してると言う。ヘンなライブラリだ。
これは面白いです。
ぶっちゃけ、「C++を好きな人はこの世にはいない」ですが、STLとかテンプレートを大好きな人はこの世にいっぱいいるんですよね(笑)。不思議な現象です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
パスカルケースの由来。
-
vbaとc言語の関連性について
-
VBSとWSHは読み方が違うだけで...
-
UNITY Float型の接尾辞fって
-
Transitional/ENとは
-
C++における継続行
-
新しいプログラムには、何故COB...
-
COBOLでのNOT = の AND条件
-
プログラム言語について c言語...
-
ホームページを作成する際に良...
-
C言語の使い道
-
VRMLってなんですか??
-
クオンツに必要なプログラミン...
-
昔、MZ-2000やX1でBASICを書い...
-
プログラミング言語について
-
緑色の箱の「Visual Studio 200...
-
Javaの勉強をしているんですがJ...
-
ゲームってC++でしか作れないの...
-
何をすればいいのかわかりません!
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
今ってプログラミング言語は何...
-
C言語、C+、C++、C#の違い
-
プログラミング言語について
-
COBOLでのNOT = の AND条件
-
近年誕生したプログラミング言語
-
UNITY Float型の接尾辞fって
-
C言語とhtmlの違いを どな...
-
vbaとc言語の関連性について
-
C++における継続行
-
プログラムに書かれる"%"記号の...
-
COBOLで文字タイプを数字...
-
VBSでDim、Private、Publicの違い
-
TO_CHARで小数点以下がある場合...
-
VBSとWSHは読み方が違うだけで...
-
Excel VBAで文字化けする (英語...
-
VCとVC++
-
HTMLとC++で、どんなホームペー...
-
C++ ってなんて読む?
-
UWSCはどのプログラミング言語?
-
会計システムをつくるために必...
おすすめ情報
また、C++ は使いやすくなったC言語。
つまり、コードの書き方としてはC++とCは同じということと考えていいのですか?