VC++ ::や->って何なんですか??

解決


ミルチビ  2008-09-08 13:57:21  No: 68972  IP: 192.*.*.*

VC++初心者です。
そもそもコンピュータ関係がよくわかっていないレベルなので宜しくお願いしますTT

VC++6.0でオセロとかの簡単なプログラミング(Windowsアプリ?)の練習をしてました。
んで、今回はVC++2005でマルチスレッドの練習をすることになったんですが、
マルチスレッド云々に入る前に、ソースの書き方が全然違う!!
6.0の時には使ってなかった「::」や「->」があったり、
そもそもコーディングがヘッダーファイルにするだったり…

振り出しに戻された感じなんですけど、とりあえず、
::や->って何なんでしょうか?
また、違いは何なんでしょうか?(一見使い方が同じように見えまして…)

えっと、OS?はXPです。
宜しくお願いしますTT

編集 削除
夏みかん  2008-09-08 14:04:16  No: 68973  IP: 192.*.*.*

>6.0の時には使ってなかった「::」や「->」があったり、
「->」はC言語からあるアロー演算です。
構造体へのポインタでアクセルするときに使う。

「::」はC言語ではなくC++言語で登場しますね。
クラスの定義やアクセス時に使う。

>そもそもコーディングがヘッダーファイルにするだったり…
普通はしないけど。

>また、違いは何なんでしょうか?(一見使い方が同じように見えまして…)
構造体とクラスについて調べてみましょう。

編集 削除
シャノン  2008-09-08 14:13:37  No: 68974  IP: 192.*.*.*

:: も -> も、VC++ 2005 から登場したものではなく、6.0 でもありましたよ。

> そもそもコーディングがヘッダーファイルにするだったり…

C++/CLI を使った Windows Form アプリだと、そのようなスタイルになりますね。

編集 削除
ミルチビ  2008-09-08 14:29:37  No: 68975  IP: 192.*.*.*

皆さん、素早い回答、ありがとうございます。

> :: も -> も、VC++ 2005 から登場したものではなく、6.0 でもありましたよ。
そうらしいですね^^;
6.0の参考書あさってみましたが(2005のがなくて…)、記述に::やらが登場してました^^;

ついでと言っては何ですが、
6.0と2005なんですが、これからプログラミングしていくのは2005にしていった方がいいんですかね?

突拍子もない質問で申し訳ないです。。。

編集 削除
どら  2008-09-08 15:01:34  No: 68976  IP: 192.*.*.*

すでに2008が存在するので敢えて2005と断定するのは何ともいえませんが・・・
今後の事を考えると、6.0と2005を持っているなら2005 + Windows SDKの最新
版を、これから2005の導入を考えているのであれば、2008にすればよいかと。

私の個人的な意見ですが、ミルチビさんの場合は、構造体やクラス、ポインタ
あたりの勉強(つまりC言語やC++の基礎)をする方をおすすめします(もちろん、
VCでもできます)。

VC特有のものではないので、今後VCを中心としてプログラムをしたいのであれ
ば、ベースにあるC、C++を学ぶべきかと。

頑張ってください^^

編集 削除
ミルチビ  2008-09-08 15:20:11  No: 68977  IP: 192.*.*.*

今まで、つぎはぎのプログラミングで乗り切ってきましたが、
やはり基礎はしっかり学んでおかないとダメですね^^;

とりあえず、2005ができる環境にありますので、これでやっていきます。


いつか私もこのような場で、質問に答えてあげられる立場になれるように、
頑張っていきます^^

とか言いながら、まだまだ皆さんのお世話になると思いますが、
その時はまた宜しくお願いします。。。

編集 削除