トップページ⇒tech
971コメント269KB

managed C++ やろうぜ!!

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
C#関連のスレは山ほどあるが
managedC++のスレが無いじゃないか。
折角.NETに生き残ったC++、みんなで語ろうぜ。
0046デフォルトの名無しさんNGNG
根性が足りん
0047デフォルトの名無しさんNGNG
根性かよ!?
・・・頑張ってみるよ
0048デフォルトの名無しさんNGNG
>>45
'System.WinForms.dll' ということは、相当古いバージョンだね。
0049デフォルトの名無しさんNGNG
>>45
System.WinForms.dllはBeta2でSystem.Windows.Forms.dllに変わりました。
0050デフォルトの名無しさんNGNG
おお、成る程。
そのDLLはありました。assemblyフォルダじゃなくて.NETの方に。

Microsoft.Win32.Interop.dllも名前が変わっているのですか??
0051名無しさん♯NGNG
>>50
> Microsoft.Win32.Interop.dll

そのDLLはβ2以降なくなったよん。
0052デフォルトの名無しさんNGNG
無くなった・・・?
もう根性でもどうにもできないな。
0053デフォルトの名無しさんNGNG
お前の環境はどうなんてっだと、小一時間問詰めたい。
0054デフォルトの名無しさんNGNG
OSのクリーンインストールからだな。
0055デフォルトの名無しさんNGNG
.NETベータ2、VC6.0、JAVA2しか入っていません。
0056デフォルトの名無しさんNGNG
うちもVS.NETβ2とVS6.0は入ってるけど別に問題無いよ。
てことはJAVAかな?
0057デフォルトの名無しさんNGNG
んなわけない。
旧バージョンをアンインストールせずに新しいやつ入れたんでしょ。
0058デフォルトの名無しさんNGNG
お前本当に古いバージョンを消したのかと、トイレに連れ込んでボコボコにしながら問詰めたい。
005956NGNG
あ、要るDLLが無いんじゃなくて、要らないDLLが在るのか(藁
スマソ
0060デフォルトの名無しさんNGNG
アンインストはかけましたよ?
但し、インストールとアンインストールを計6回ぐらいしましたが・・・
0061デフォルトの名無しさんNGNG
その環境は捨てろ。
OSから再インストールしやがれ。
0062デフォルトの名無しさんNGNG
β2でFormを使ったHello Wolrdをどなたかお示しください。
日本語ページでは見付かりません。
(managed C++の情報って何処にあるんだ? )
0063デフォルトの名無しさんNGNG
こんなんでどうでしょう?RTMでしか試してませんが。

#using <mscorlib.dll>
#using <System.dll>
#using <System.Windows.Forms.dll>
using namespace System;
using namespace System::Windows::Forms;

__gc public class Form1 : public Form {
protected:
 Label *label1;
public:
 Form1() {
  label1 = new Label();
  label1->Text = S"Hello World!";
  this->Controls->Add(label1);
 };
};

int main() {
 Application::Run(new Form1());
}

% cl /clr form1.cpp
0064デフォルトの名無しさんNGNG
をを・・・出来ましたよ。
ありがとうございます!!
(やっと、GUIの門の前に立った♪)
0065仕様書無しさんNGNG
おおっ、いつの間にこんなスレが!
昔、managed C++とC#の比較のセミナー見たことあるけど、
managed C++は味があっていい感じ。
0066デフォルトの名無しさんNGNG
C#とmanaged C++ってどう違うんですか?
0067デフォルトの名無しさんNGNG
文法が違います。
JAVAとC++と同じぐらい違います。
0068デフォルトの名無しさんNGNG
>>63を見る限りは文法がそんなに違うとも思えないんですが…
0069デフォルトの名無しさんNGNG
VCをメインに使ってきた私にはC#もJAVAもほとんど一緒に見えるのです。
だからmanaged C++は私には絶好の言語なのです。ガベコレがあるなんて
最高としか思えない。
0070デフォルトの名無しさんNGNG
ガベージコレクションってnewしたヤツだけ消してくれるの? GetDCしてReleaseDCしなくてもよくなるとかってことは?
0071デフォルトの名無しさんNGNG
誰かmanaged C++の分かり易い解説ページ知らない?
本とか全然ないしさ、みんなどうやって勉強してるの?
0072デフォルトの名無しさんNGNG
>>70
ない。GC対象になるのは__gcなクラスだけ。

>>71
RTMのドキュメント。
0073デフォルトの名無しさんNGNG
managed C++ってSTL使えるの?
使えるなら、managed C++に乗り換えるけど。
0074デフォルトの名無しさんNGNG
C#とくらべて少しは速いの?>>実行速度
0075デフォルトの名無しさんNGNG
>>37
gcroot
0076デフォルトの名無しさんNGNG
>>73
You can use it
0077デフォルトの名無しさんNGNG
managedC++ってネィティブコンパイラ?
0078デフォルトの名無しさんNGNG
C#とコレが使えれば、とりあえず
10年は喰えそうな気がするのだが、
俺の気のせいだろうか・・・・?
0079デフォルトの名無しさんNGNG
正解。
0080デフォルトの名無しさんNGNG
>>77
っていうか、cl.exeはネイティブコードもILも両方吐けます。
0081デフォルトの名無しさんNGNG
クライアント領域が出ねぇーーーー!!
何故だぁ!!
0082デフォルトの名無しさんNGNG
>>80
ネイティブっつーても、
.NET frameworkは必要。
誤解する人も出るので
言い方改めた方がよい。
0083デフォルトの名無しさんNGNG
>>82
それを言ったら、いまのプログラムも Win32 API は必要だし。(GDI32.DLL とかさ)
0084デフォルトの名無しさんNGNG
ATLってどうなるの?
0085デフォルトの名無しさんNGNG
>>84
死滅しました
0086デフォルトの名無しさんNGNG
COMの時代も終わりか・・・
0087デフォルトの名無しさんNGNG
>>85
.net でもヘッダファイルには残ってるが。従来の WTL の機能も一部取り込んで、
発展はしてる。(メインストリームではないと思うが)
0088デフォルトの名無しさんNGNG
>>82
はぁ。誤解しているのはあんたです。cl.exeはx86ネイティブ吐けます。ILを吐くのは/clrのときだけ。

>>85-87
ATL7使ってみなって。ある意味C++/ATLユーザーは.NET Frameworkなんかいらないってことがわかるから。
ATLはまだまだメインストリーム。
0089デフォルトの名無しさんNGNG
age
0090デフォルトの名無しさんNGNG
マネジドやるならC#かJavaでええやん。
0091デフォルトの名無しさんNGNG
C++でもええやん
0092デフォルトの名無しさんNGNG
>88
82じゃないけどおれも誤解してたかも。
managed C++はCLR(.NET)を使うために作られたものだと思ってたけど、
CLRと全く関係無しに managed C++を使うものなの?
0093デフォルトの名無しさんNGNG
>>92
managed extension for C++はC++の構文で、CLR向けのコードを書くための拡張機能。

Visual C++ .NETは、通常のC++以外に、managed extension*も*サポートするC++コンパイラ。

>CLRと全く関係無しに managed C++を使うものなの?
CLRと関係なしに「C++を」使うことができる。
CLRと関係しまくりの「managed extensionをC++とともに」使うこともできる。
OK?
009492NGNG
>93
>>CLRと全く関係無しに managed C++を使うものなの?
>CLRと関係なしに「C++を」使うことができる。
>CLRと関係しまくりの「managed extensionをC++とともに」使うこともできる。
CLRを使わずに、「managed extensionをC++とともに」使うことはありえないですよね?

いや、83さんがx86ネイティブを非/clr時に吐けると書いているけど、
ここはmanaged C++スレなので、managedをCLR非利用時に使うことが
ありえるのか?と疑問に感じましたので。
0095デフォルトの名無しさんNGNG
つーかな、ファイル名そのものがある種のポインタなわけよ。
だから、94は、ポインタとポインタのポインタの説明って事さ。
009695NGNG
誤爆スマソ。
0097デフォルトの名無しさんNGNG
>>94
なるほど。僕としては、
「managedをCLR非利用時に使うことがありえるのか?」
っていう文章が文章として成り立っていない(managedっていう言葉はCLRと同義語だから)ので、??と思ったのでした。

あ、ちなみに83==93==thisってことで。
0098デフォルトの名無しさんNGNG
ちがーう。88==93==97。
0099デフォルトの名無しさんNGNG
templateが使えて、GCもあればC#いらん。
C++プログラマーの長年の夢は叶えられた。
0100100!NGNG
今だ100ゲット!
0101デフォルトの名無しさんNGNG
>99
ならD使え
0102デフォルトの名無しさんNGNG
しかし101は無視された!
しかし101は無視された!
しかし101は無視された!
010399NGNG
D言語ってDigital Marsのところのヤツか?
確かにC++に最も近いだろうが、「何処でも動く」
わけじゃないからなぁ。
0104デフォルトの名無しさんNGNG
>「何処でも動く」
managedとか言ってる時点で駄目だろ
0105デフォルトの名無しさんNGNG
んなこたぁない。実際に「何処でも動く」ようにしてあるんだから。
言葉の定義はどうでもよくて実際が大事。
0106デフォルトの名無しさんNGNG
managedが動く「何処でも」って何処のこと?
0107デフォルトの名無しさんNGNG
>103-105
微妙なずれを感知。
0108デフォルトの名無しさんNGNG
どこでも=MSか地味案が気にかけてくれた所&ユーザがCLR作っちゃうくらい
やるきのあるコミュニティのある所。
0109デフォルトの名無しさんNGNG
>>99
君は、何屋さんかな?
C++プログラマは要らないと思ってるんだよ。
今まで、ずっとJavaにコンプレックス持ってて、
「でもこっちにはテンプレートがあるんだい」とか言って田?
0110デフォルトの名無しさんNGNG
C++プログラマは要らないと・・・
ガ━━(゚Д゚;)━━ン!
0111デフォルトの名無しさんNGNG
>109-110
明らかなズレを感知。
0112デフォルトの名無しさんNGNG
>109
その通りです。
JAVAのバカヤロー!!
0113109NGNG
ごめん。
誤:C++プログラマは要らないと思ってるんだよ。
正:C++プログラマはGCなんか要らないと思ってるんだよ。何にしても、煽り入ってたね。ごめーん。
0114デフォルトの名無しさんNGNG
許さーん。
0115デフォルトの名無しさんNGNG
確かにC++にガベージコレクションはいらないかも。
ろくにメモリの管理もできないような厨房大量発生の予感。
0116デフォルトの名無しさんNGNG
いらないというか付けて欲しくないね。
もし付いたらパフォーマンス最優先なOOPLがなくなってしまう。
0117デフォルトの名無しさんNGNG
auto_ptrで十分…
0118デフォルトの名無しさんNGNG
BoehmGCだっけ?あれはどーなの?
0119デフォルトの名無しさんNGNG
Bjarne Stroustrup >
>>The best garbage collecting language that I know of is C++ with a garbage collector.
0120デフォルトの名無しさんNGNG
The best garbage collecting language that I know of is Ruby!
0121デフォルトの名無しさんNGNG
>>116
クラス単位で選択可能にすれば良いだけだと思うが。
0122デフォルトの名無しさんNGNG
>121
なにがいいんだ?
それでGCが走るタイミングを制御できんのか?
0123デフォルトの名無しさんNGNG
GC なら Lisp に一日の長あり。
0124デフォルトの名無しさんNGNG
>>119
おお・・・Stroustrupがそんなことを言っていたなんて(福音)
その下のは何?宗教の勧誘か??
0125デフォルトの名無しさんNGNG
>>119
「GC付きのもっともよい言語は、私の知る限り、GC付きのC++です」
意味わかりません。これマネジドのこと?そんなこと教祖が言ったの?
信じらんない。ソース希望。
0126デフォルトの名無しさんNGNG
そうだよねー、
GC の制御を細かく出来ないと 速度がクリティカルな環境じゃ使えない。

なんとかならないのかな? .NET の GC は。
0127デフォルトの名無しさんNGNG
>>126
クリティカルな部分は自分で管理するとかして、
gcの起動を抑制すればいいんじゃない?
0128デフォルトの名無しさんNGNG
>>125
訳さんでもいいわい。
ttp://www.csl.mtu.edu/cs5311/www/quote.html
0129デフォルトの名無しさんNGNG
こんなのもあるぞ。
http://pc.2ch.net/test/read.cgi/tech/1010852722/620
0130デフォルトの名無しさんNGNG
StroustrupはC++のことしかいってないなぁ(w
>Pablo Picasso
>Computers are useless. They can only give you answers.
が(・∀・)カコイイ!!
0131デフォルトの名無しさんNGNG
マジな話、GCの制御できないのか?(文法レベルで)
VS.NETにはオプションでありそうな気がするんだが。
0132デフォルトの名無しさんNGNG
なにを制御したいのかな?呼びたいときに呼ぶってなら、System.GCクラスでできるけど。
あとGCが起動するスレッドをどれにするかとか、制御できるよ。

でも、VS.NETのオプションとかいってるところを見ると、アンタGCわかってないね。
開発環境と関係あるわけがない。
0133興味本位NGNG
ベタな質問でスマソ。
managed C++ソースコードの標準的な拡張子って.cppのままなんですか?

managed G++が出ないかなあ…(CLRが先か)
0134デフォルトの名無しさんNGNG
>133
そう。
0135興味本位NGNG
thx
構文的にはC++にCLRを使うための機能を追加しただけだから.cppでいいのか。
0136 NGNG
機能追加なら、C++++で.cp4か?
0137デフォルトの名無しさんNGNG
++c++ではどうか。
0138デフォルトの名無しさんNGNG
++++++++c++++++++
0139デフォルトの名無しさんNGNG
それじゃBrainF**kだよ(w
0140デフォルトの名無しさんNGNG
Visual BrainF**k
0141デフォルトの名無しさんNGNG
age
0142デフォルトの名無しさんNGNG
類似スレが立ったようだが、いきなり荒らされてるな。
0143デフォルトの名無しさんNGNG
c=1;
++c++;
は
c==3ですか?
0144デフォルトの名無しさんNGNG
ttp://msdn.microsoft.com/msdnmag/issues/02/02/ManagedC/ManagedC.asp
0145デフォルトの名無しさんNGNG
全てがオブジェクトである
■ このスレッドは過去ログ倉庫に格納されています