C# C、C++、C#の関係について 09blog

C# C、C++、C#の関係についてのページです。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--年--月--日 トラックバック(-) コメント(-)

C# C、C++、C#の関係について

現在C#で簡単な開発しています。

今度就く業務ではC++が必要だから、勉強しておくようにと言われました。

C#を使っていながら、恥ずかしい質問なのですが・・・

 ・よく聞く「VC++」と「C++.Net」は、違うのでしょうか?

  正式名称が「Microsoft Visual C++ .Net」なので、同じような気がするのですが。

  私の使用PCには「Microsoft Visual Studio .Net 2003」が入っています。

 ・C言語とC++との違いは何なのでしょうか?

  両者の関係が分かりません。

  C++を勉強する場合、C言語というのは飛ばしてよいのでしょうか?

  C#を習得するときは、C言語を勉強しませんでした。

  C++で開発とか、C#で開発とか言いますが、「C言語で開発」とは言わないですよね?

C#とC++がどれほど違うのかが不安です。

質問がたくさんになってしまいましたが、よろしくお願いいたします。



 ・よく聞く「VC++」と「C++.Net」は、違うのでしょうか?

文脈により違うものをさす可能性もあります。(同じ可能性もありますが、大抵は違うかも…)

「VC++」は、Microsoft社のC++コンパイラ製品名(の略称)であって、言語ではないです。

但し、特にMFCでの開発をさして(C++と区別して)「VC++」と表現する方もいます。

そして、「VC++」は、「非.NET platformのC++(標準C++)」と、

.NET platform用のManaged C++(MSの独自拡張。後に整理されてC++/CLIとして規格化)の*両方に*対応してます。

C++.NETというと、恐らくはManaged C++(MS独自拡張)か、

C++/CLI(これはECMAで独立した言語として標準化)をさすと思われます。

# Managed C++とC++/CLIも微妙に違う言語です。

一報、単にVC++と言う場合、標準C++(+MFC)の可能性が高いです。

> 私の使用PCには「Microsoft Visual Studio .Net 2003」が入っています。

これは、.NET framework上のManaged C++と標準C++の両方に対応した製品です。

 ・C言語とC++との違いは何なのでしょうか?

C言語は、ISO/IEC9899で標準化された言語です。

C++は、C言語をベースに開発された別の言語です(ISO/IEC14882)。

そして、.NET framework用のC++/CLI (ECMA-372)も別の言語です。

CとC++の関係を例えるなら、ラテン語と英語とかみたいなものでしょうか。

(ベースでもあり、参考にはなるが、似て非なるもの)

> C++を勉強する場合、C言語というのは飛ばしてよいのでしょうか?

知っているとお得です。知らないと将来「はまる」可能性もあります。

ですが、最初に勉強するべきかといわれると、議論が分かれるところだと思います。

> C++で開発とか、C#で開発とか言いますが、「C言語で開発」とは言わないですよね?

「C言語で開発」とも言います。

(PCアプリだと「C言語+Win32」ということが少ないだけで、組込業界等に行くと普通にあります。別言語ですし、C言語のシェアも高いので)

> C#とC++がどれほど違うのかが不安です。

根本のOOPとかは共通ですが、C++の方が格段に複雑で難易度が高いです。

C++⇒C#は比較的容易ですが、逆は結構面倒だと思います。

C#がオートマ車の運転なら、C++はF1カーのようなもの。

クラッチの切り方から注意しないとエンストしたり、事故ります。

その代わり極めれば性能が出ます。(反面、極めるのは困難です)



スポンサーサイト

2008年04月30日 トラックバック(-) コメント(-)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。