おそらく、.NET開発でデファクトスタンダードに最も近いであろう
C++/CLIについて語ろうぜ!
このスレはC++および.NET Frameworkについて一定以上の知識を持っている人が対象となります。
.NETのクラスライブラリの使い方といった質問は Visual Studioスレにお願いします。
前スレッドはこちら
くだすれC++/CLI(初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1142144110/l1
dat落ち姉妹スレ
C++/CLI part3
http://pc12.2ch.net/test/read.cgi/tech/1206447234/l1
http://pc11.2ch.net/test/read.cgi/tech/1142147319/l1
http://pc8.2ch.net/test/read.cgi/tech/1126450441/l1
managed C++ やろうぜ!! 002
http://pc8.2ch.net/test/read.cgi/tech/1139043535/l1
探検
くだすれC++/CLI(初心者用)part2
■ このスレッドは過去ログ倉庫に格納されています
2010/03/15(月) 09:41:19
329デフォルトの名無しさん
2011/06/26(日) 11:43:42.77 C++とC#を使いこなしたうえで両方を使うために
C++/CLIというならいいけど、両者の利点を
生かすためにいきなりこれ、というのは無理w
C++/CLIというならいいけど、両者の利点を
生かすためにいきなりこれ、というのは無理w
330デフォルトの名無しさん
2011/06/27(月) 09:26:00.43 >>328
起動速度や応答性を気にしないなら、C#で十分ってことだな
起動速度や応答性を気にしないなら、C#で十分ってことだな
331デフォルトの名無しさん
2011/06/27(月) 10:22:03.55 いや起動速度はC#と変わらないよ
ネイティブのDLLを読み込む分遅くなることはあっても速くなることはない
それからアンマネージコードとマネージコードの境界を越えるオーバーヘッドは馬鹿にならないので
下手するとマネージコードだけの方が速い
ネイティブのDLLを読み込む分遅くなることはあっても速くなることはない
それからアンマネージコードとマネージコードの境界を越えるオーバーヘッドは馬鹿にならないので
下手するとマネージコードだけの方が速い
332デフォルトの名無しさん
2011/06/27(月) 10:36:48.76 さらにC++/CLIの存在価値が下がったw
本当にラッパー専用言語だな
本当にラッパー専用言語だな
333デフォルトの名無しさん
2011/06/27(月) 12:13:07.27 C++にGCを入れろと言う要望への、一つの回答。
D言語も悪いところも見えてくる。
D言語も悪いところも見えてくる。
334デフォルトの名無しさん
2011/06/27(月) 15:06:24.73 ラッパーなら別にネイティブでいいんだよなぁ
335デフォルトの名無しさん
2011/06/27(月) 17:47:56.62 C++/CLIがなかったら
どうやってラップするの?
どうやってラップするの?
336デフォルトの名無しさん
2011/06/27(月) 18:01:37.46 C#-->C++は簡単だけど、逆は面倒。
337デフォルトの名無しさん
2011/06/27(月) 18:03:44.31 別にスタティックライブラリだろうがC++ライブラリだろうが
なんでもかんでもDLLに包んでP/Invokeでおk
ObjCコンパイラ以上の荒業でラッパーコードが書けるのがC++/CLIの醍醐味だけど
なんか、こう、便利とは違うんだよなあ…
なんでもかんでもDLLに包んでP/Invokeでおk
ObjCコンパイラ以上の荒業でラッパーコードが書けるのがC++/CLIの醍醐味だけど
なんか、こう、便利とは違うんだよなあ…
338デフォルトの名無しさん
2011/06/27(月) 18:05:53.91 マネージドで、ポインタを使いまくれる。
339デフォルトの名無しさん
2011/06/27(月) 19:58:57.49 C#でできなくてC++/CLIでなら可能なポインタ関係の操作ってあったっけ?
C#のunsafeの方が簡潔にCっぽく書けて扱いやすい気がするんだが
C#のunsafeの方が簡潔にCっぽく書けて扱いやすい気がするんだが
340デフォルトの名無しさん
2011/06/28(火) 09:14:21.36 C#はMarshal派
C++のUIだけC++/CLIやC#みたいに自動で作ってくれるC++は無い物か
BCBなら出来るけどさ
C++のUIだけC++/CLIやC#みたいに自動で作ってくれるC++は無い物か
BCBなら出来るけどさ
341デフォルトの名無しさん
2011/06/28(火) 21:35:58.12 BCBでやれば万事解決
342デフォルトの名無しさん
2011/06/29(水) 14:14:27.30 MSからBCB出してくんねーかな
C++/CLIは無かったことにして、買収しちゃえばそれで済むのに
C++/CLIは無かったことにして、買収しちゃえばそれで済むのに
343デフォルトの名無しさん
2011/06/29(水) 23:59:08.75 だからC++/CLIは「WinFormsが使えるC++」なんて生易しいものじゃないと何度言えば
344デフォルトの名無しさん
2011/06/30(木) 07:08:43.64 Windowsは、C++でプログラミングが基本。
345デフォルトの名無しさん
2011/06/30(木) 08:58:03.95 なぜC++は易しいのにC++/CLIは易しくないのか?
みたいな無神経な言い回しが何度も言われていた時期があった。
聞くほうも同じくらい無神経だから何度言っても通じないことは容易に想像できる。
みたいな無神経な言い回しが何度も言われていた時期があった。
聞くほうも同じくらい無神経だから何度言っても通じないことは容易に想像できる。
346デフォルトの名無しさん
2011/06/30(木) 09:30:47.84 まあネイティブのC++でGUI作るよりはずっと簡単だけど
C++/CLIでWinForms使うなっていうのは
どうせC#わからないと使えないしC++の経験があってもC#覚えたほうが早いからC#やれってこと
C++の経験があるからC++/CLIがいいだろうと思って始めた初心者が
C#のTIPSサイトですぐ出てくるようなコントロールの使い方を質問してくるとそりゃC#やれと言いたくなる
C++/CLIでWinForms使うなっていうのは
どうせC#わからないと使えないしC++の経験があってもC#覚えたほうが早いからC#やれってこと
C++の経験があるからC++/CLIがいいだろうと思って始めた初心者が
C#のTIPSサイトですぐ出てくるようなコントロールの使い方を質問してくるとそりゃC#やれと言いたくなる
347デフォルトの名無しさん
2011/06/30(木) 09:58:07.10348デフォルトの名無しさん
2011/06/30(木) 16:10:30.57 せめてVB並みのインテリセンスを実装してくれ
349デフォルトの名無しさん
2011/06/30(木) 16:29:27.88 2010にインテリセンスのらないの確定か
vNextも最初のバージョンは載らないらしいし
vNextも最初のバージョンは載らないらしいし
350デフォルトの名無しさん
2011/06/30(木) 23:34:53.54 GUIでUI設計ができてネイティブコードその上爆速コンパイル
Borland時代のDelphiはまさに神言語だったんだなぁと思う
Borland時代のDelphiはまさに神言語だったんだなぁと思う
351デフォルトの名無しさん
2011/07/01(金) 00:31:39.48 C#がネイティブコード吐く言語だったとしてもコンパイルは爆速のはずだよ
C++の言語仕様が糞なだけ
C++の言語仕様が糞なだけ
352デフォルトの名無しさん
2011/07/01(金) 00:57:16.04 Scalaはコンパイル遅いけど糞なのか?
353デフォルトの名無しさん
2011/07/01(金) 09:30:18.33 C#も多次元配列とか使わなければ速いよ
354デフォルトの名無しさん
2011/07/01(金) 09:37:09.00 Cが速いのは、安全性と裏腹。
355デフォルトの名無しさん
2011/07/01(金) 09:53:59.45 Cでも安全性は確保可能
356デフォルトの名無しさん
2011/07/01(金) 17:08:23.75 理屈では可能でも
現実の大部分のプログラムはそうなってないんだけど
現実の大部分のプログラムはそうなってないんだけど
357デフォルトの名無しさん
2011/07/01(金) 20:01:09.19 そうか?
それだと原発事故と飛行機事故と自動車事故と比べて騒いでる連中と同じだぞ
それだと原発事故と飛行機事故と自動車事故と比べて騒いでる連中と同じだぞ
358デフォルトの名無しさん
2011/07/01(金) 21:01:16.07 Cは標準ライブラリが安全性を確保するのが難しい作りになってるだけで、
使うライブラリによっては安全に書ける、気がする
使うライブラリによっては安全に書ける、気がする
359デフォルトの名無しさん
2011/07/01(金) 21:35:52.26 セキュリティは別にして、.NETはメモリ破壊が起きないのがいい
お前はもう死んでいる的なバグがずっと少ない
お前はもう死んでいる的なバグがずっと少ない
360デフォルトの名無しさん
2011/07/01(金) 22:42:12.30 ガベコレは、理論武装とかしなくても安全性が明らかだから好感を持てるんだが、
逆に言うとガベコレ使わなくても明らかに安全な部分はCで書いていい
逆に言うとガベコレ使わなくても明らかに安全な部分はCで書いていい
361デフォルトの名無しさん
2011/07/05(火) 10:04:29.39 C++/CLIはやれば出来る子
計算部分はネイティブで書いて、GUIや描画部分は.NETにやらせることで
高速かつ生産性の高いプログラミングが出来る
・・・と、言う夢だったのさ
計算部分はネイティブで書いて、GUIや描画部分は.NETにやらせることで
高速かつ生産性の高いプログラミングが出来る
・・・と、言う夢だったのさ
362大天使 ◆uL5esZLBSE
2011/07/05(火) 13:17:03.75 >>357
Cは安全性を捨てて速度得てんだよ バカか?
Cに安全性を追加したら
それは劣化C#になるから、下手に自分でかいた甘いコードで安全性をはかるよりも
C#でやるべき
お前はなんか、C++上で劣化C#作って喜んでそうなバカだな
Cは安全性を捨てて速度得てんだよ バカか?
Cに安全性を追加したら
それは劣化C#になるから、下手に自分でかいた甘いコードで安全性をはかるよりも
C#でやるべき
お前はなんか、C++上で劣化C#作って喜んでそうなバカだな
363デフォルトの名無しさん
2011/07/05(火) 15:20:27.62 自演乙
364デフォルトの名無しさん
2011/08/17(水) 15:46:40.55 VS2010で作っちゃったんだけど、VS2008に変換することって出来ます?
インテリセンス無いから入力がめんどくさい・・・
インテリセンス無いから入力がめんどくさい・・・
365デフォルトの名無しさん
2011/08/17(水) 21:56:13.11 無理
一応注意しとくと2008でコンパイルした混在アセンブリは.NET4でロードできなくなるよ?
一応注意しとくと2008でコンパイルした混在アセンブリは.NET4でロードできなくなるよ?
366デフォルトの名無しさん
2011/08/17(水) 22:07:00.37 あとはアドイン購入か。
http://www.wholetomato.com/default.asp
http://www.wholetomato.com/default.asp
367デフォルトの名無しさん
2011/08/17(水) 23:11:17.61 新規プロジェクトにコードだけ引っ越した方が簡単な気がするけど
368デフォルトの名無しさん
2011/08/18(木) 15:44:09.37 俺もそう思う
projファイル書き替えでなんとかなるけどね
混在はapp.config無理やりつけてやるとか
projファイル書き替えでなんとかなるけどね
混在はapp.config無理やりつけてやるとか
369デフォルトの名無しさん
2011/08/31(水) 22:00:08.56 プロジェクトをいちいち作るのがめんどくさい…
370デフォルトの名無しさん
2011/09/02(金) 22:58:08.40 MSBuild 用のXMLなんだから、直接修正しろよ
371デフォルトの名無しさん
2011/09/13(火) 13:37:36.74 どうでもいい事だよ C++/CLI で better C なんて
372デフォルトの名無しさん
2011/09/16(金) 11:52:55.12 http://msdn.microsoft.com/en-us/library/windows/apps/hh454076%28v=VS.85%29.aspx
なんかわけのわからないことになってるぞ
C++/CLI切ってネイティブのC++にC++/CLI風のCOM拡張を入れるらしい
なんかわけのわからないことになってるぞ
C++/CLI切ってネイティブのC++にC++/CLI風のCOM拡張を入れるらしい
373デフォルトの名無しさん
2011/09/16(金) 13:18:45.29 切るんじゃなくてWinRT API用の拡張。
.net framework用には今まで通りC++/CLIを使う。
.net framework用には今まで通りC++/CLIを使う。
374デフォルトの名無しさん
2011/09/16(金) 14:44:53.44 .NETとCOMで共通のAPIを用意して、C++は完全ネイティブでCOM使うっていうのは
C++/CLIに比べれば至極真っ当なやり方だと思う
最初からそうしてくれてれば良かったのに
C++/CLIに比べれば至極真っ当なやり方だと思う
最初からそうしてくれてれば良かったのに
375デフォルトの名無しさん
2011/09/16(金) 21:24:20.48 >>374
それではプラットホームに依存してしまう。
それではプラットホームに依存してしまう。
376デフォルトの名無しさん
2011/09/16(金) 21:42:24.87 C++/CLIってCLI拡張の部分は標準化されてるけど
ネイティブコードとどう結びつけるかは実装依存でしょ
CLIに依存する記述だけ言語仕様から削ればCOMとのバインディングは実装次第ってことで問題ない
ネイティブコードとどう結びつけるかは実装依存でしょ
CLIに依存する記述だけ言語仕様から削ればCOMとのバインディングは実装次第ってことで問題ない
377デフォルトの名無しさん
2011/09/19(月) 03:32:40.73 Win32アプリケーションとして作成したプロジェクトで、
作成されたウィンドウに.net framework用のコントロールを
貼ることは可能でしようか?
作成されたウィンドウに.net framework用のコントロールを
貼ることは可能でしようか?
378デフォルトの名無しさん
2011/09/19(月) 06:50:32.14379デフォルトの名無しさん
2011/09/19(月) 15:35:43.23380デフォルトの名無しさん
2011/09/19(月) 20:45:06.45 別にソース読まなくても、CWinFormsControl じゃ駄目なの?
381デフォルトの名無しさん
2011/09/20(火) 22:52:53.28382デフォルトの名無しさん
2011/09/26(月) 15:27:11.67383デフォルトの名無しさん
2011/10/12(水) 15:19:32.05 もともと持ってないものは捨てられないわな
384デフォルトの名無しさん
2011/10/16(日) 23:44:09.15 WebBrowserコントロールにNewWindow2イベントを実装する
http://main.tinyjoker.net/Tech/CSharp/WebBrowser%A5%B3%A5%F3%A5%C8%A5%ED%A1%BC%A5%EB%A4%CBNewWindow2%A5%A4%A5%D9%A5%F3%A5%C8%A4%F2%BC%C2%C1%F5%A4%B9%A4%EB.html
これをVC2008でやりたいんですけどどう書けばいいか分かる人いますか・・・
http://main.tinyjoker.net/Tech/CSharp/WebBrowser%A5%B3%A5%F3%A5%C8%A5%ED%A1%BC%A5%EB%A4%CBNewWindow2%A5%A4%A5%D9%A5%F3%A5%C8%A4%F2%BC%C2%C1%F5%A4%B9%A4%EB.html
これをVC2008でやりたいんですけどどう書けばいいか分かる人いますか・・・
385デフォルトの名無しさん
2011/10/16(日) 23:51:00.77 C++/CLIならほとんど何も違わないが
C++/CLIはC++じゃないけどそれはわかってる?
そんな質問するような人がなんでC++/CLIなんか使うのか正直意味がわからない
素直にC#使うか、C++やりたいんだったらネイティブでATLやMFC使ったほうが
C++/CLIはC++じゃないけどそれはわかってる?
そんな質問するような人がなんでC++/CLIなんか使うのか正直意味がわからない
素直にC#使うか、C++やりたいんだったらネイティブでATLやMFC使ったほうが
386デフォルトの名無しさん
2011/10/17(月) 13:53:12.58 初心者用といっても、.NETとC++はマスターしてないと。
387デフォルトの名無しさん
2011/10/17(月) 14:51:10.32388デフォルトの名無しさん
2011/10/17(月) 15:51:31.18 むしろ初心者はC++/CLI使うな
389デフォルトの名無しさん
2011/10/29(土) 09:05:13.17 今までFormで自動で作る機能でストリップメニューを作ってたのですがそうすると一個づつthis->A = gcnew... this->B = gcnew...
みたいな感じで作られてしまって、ABCのときもあればABCDEの時もあるようにしたいので
ループみたいな感じでまとめたいのですが
array<System::Windows::Forms::ToolStripMenuItem>^ strips = gcnew array<System::Windows::Forms::ToolStripMenuItem>(5); というやり方だとは教わったのですがこれをメニューアイテムに登録するときに
this->StripMenuItem1->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(5) {this->AToolStripMenuItem,this->BToolStripMenuItem,this->CToolStripMenuItem・・・}
と書いてたのですがここはどうすれば良いでしょうか?
みたいな感じで作られてしまって、ABCのときもあればABCDEの時もあるようにしたいので
ループみたいな感じでまとめたいのですが
array<System::Windows::Forms::ToolStripMenuItem>^ strips = gcnew array<System::Windows::Forms::ToolStripMenuItem>(5); というやり方だとは教わったのですがこれをメニューアイテムに登録するときに
this->StripMenuItem1->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(5) {this->AToolStripMenuItem,this->BToolStripMenuItem,this->CToolStripMenuItem・・・}
と書いてたのですがここはどうすれば良いでしょうか?
390デフォルトの名無しさん
2011/10/29(土) 09:24:47.38 その前にusing namespace System::Windows::Forms;を入れることを激しくおすすめするw
391デフォルトの名無しさん
2011/10/29(土) 09:30:46.12 どういうことですか?わかりやすく説明してください
392デフォルトの名無しさん
2011/10/29(土) 09:50:02.99 array<System::Windows::Forms::ToolStripMenuItem^>^ じゃないの
っていうかC++/CLIなんかやめてC#やれ
っていうかC++/CLIなんかやめてC#やれ
393デフォルトの名無しさん
2011/10/29(土) 09:53:37.07 >>392
ありがとうございます
そこは直しました
this->StripMenuItem1->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(5) {this->AToolStripMenuItem,this->BToolStripMenuItem,this->CToolStripMenuItem・・・}
ここに何を入れていいのかわかりません
C#もやってますがどちらにしろ初心者でわかりませんし・・・
ありがとうございます
そこは直しました
this->StripMenuItem1->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^ >(5) {this->AToolStripMenuItem,this->BToolStripMenuItem,this->CToolStripMenuItem・・・}
ここに何を入れていいのかわかりません
C#もやってますがどちらにしろ初心者でわかりませんし・・・
394デフォルトの名無しさん
2011/10/29(土) 10:15:21.39 配列を作ったら次は各要素にToolStripItemのインスタンスを代入する
C#の入門書買って出直してきたら
C#の入門書買って出直してきたら
395デフォルトの名無しさん
2011/10/29(土) 16:39:02.97 for i=0 < .. <i++
IntPtr ptr(hoge[i]);
strips[i] = (gcnew System::Windows::Forms::ToolStripMenuItem());
strips[i]->Text = System::Runtime::InteropServices::Marshal::PtrToStringAnsi(ptr);}
hoge[i]はhoge[5][20]のWCHARです
先頭の一文字しかTextに入っていません。どうすれば良いでしょうか?
IntPtr ptr(hoge[i]);
strips[i] = (gcnew System::Windows::Forms::ToolStripMenuItem());
strips[i]->Text = System::Runtime::InteropServices::Marshal::PtrToStringAnsi(ptr);}
hoge[i]はhoge[5][20]のWCHARです
先頭の一文字しかTextに入っていません。どうすれば良いでしょうか?
396デフォルトの名無しさん
2011/10/29(土) 16:58:16.15 > Marshal.PtrToStringAnsi メソッド
> アンマネージ ANSI 文字列から最初の null 文字に遭遇するまでのすべての文字をマネージ String にコピーし、
> 各 ANSI 文字を Unicode に拡張します。
何故、WCHAR*を入れられると思ったのだろうか
http://msdn.microsoft.com/ja-jp/library/bb384865.aspx
> アンマネージ ANSI 文字列から最初の null 文字に遭遇するまでのすべての文字をマネージ String にコピーし、
> 各 ANSI 文字を Unicode に拡張します。
何故、WCHAR*を入れられると思ったのだろうか
http://msdn.microsoft.com/ja-jp/library/bb384865.aspx
397デフォルトの名無しさん
2011/10/29(土) 17:13:28.22 >>396
>アンマネージ ANSI 文字列から最初の null 文字に遭遇するまでのすべての文字をマネージ String にコピーし、
> 各 ANSI 文字を Unicode に拡張します。
どの部分がcharって意味なんですか?
ちなみにsize_t wLen = 0;errno_t err = 0;/*ロケール指定*/setlocale(LC_ALL,"japanese");/*変換*/err = wcstombs_s(&wLen, wStrC, 20, charmoji, _TRUNCATE);で直したらできました
>アンマネージ ANSI 文字列から最初の null 文字に遭遇するまでのすべての文字をマネージ String にコピーし、
> 各 ANSI 文字を Unicode に拡張します。
どの部分がcharって意味なんですか?
ちなみにsize_t wLen = 0;errno_t err = 0;/*ロケール指定*/setlocale(LC_ALL,"japanese");/*変換*/err = wcstombs_s(&wLen, wStrC, 20, charmoji, _TRUNCATE);で直したらできました
398デフォルトの名無しさん
2011/10/29(土) 18:45:00.94 array<System::Windows::Forms::ToolStripMenuItem^>^ strips = gcnew array<System::Windows::Forms::StripMenuItem^>(5);
のstripsをフォームいじっても消えないところでグローバル宣言したいのですがどうすれば良いでしょうか?
のstripsをフォームいじっても消えないところでグローバル宣言したいのですがどうすれば良いでしょうか?
399デフォルトの名無しさん
2011/10/29(土) 19:27:05.70400デフォルトの名無しさん
2011/10/30(日) 00:13:45.13401デフォルトの名無しさん
2011/10/30(日) 00:22:47.79 arrayの内1つを消して間を詰めるにはどうしたら良いですか?
402デフォルトの名無しさん
2011/10/30(日) 00:25:17.38 無理。新しい配列を作ってコピーする。
403デフォルトの名無しさん
2011/10/30(日) 00:32:43.14 arrayって使わない方が良いんですか?
vectorとかの方が良いんですか?
vectorとかの方が良いんですか?
404デフォルトの名無しさん
2011/10/30(日) 00:35:25.75 .NETが絡むところでvectorは使うな
動的に要素数を変えたいならSystem::Collection::Generic::List<T>を使う
もういいからC#やれ
動的に要素数を変えたいならSystem::Collection::Generic::List<T>を使う
もういいからC#やれ
405デフォルトの名無しさん
2011/10/30(日) 00:36:42.68 じゃあ最後にC++/CLIのメリットを教えてください
406デフォルトの名無しさん
2011/10/30(日) 00:38:40.01 マゾ御用達
407デフォルトの名無しさん
2011/10/30(日) 00:53:12.14 キモかわいい
array<Hoge^>^%はC#だとref Hoge[]で味気ない
array<Hoge^>^%はC#だとref Hoge[]で味気ない
408デフォルトの名無しさん
2011/10/30(日) 21:28:13.45 for(int i=1;i<5;i++){this->textBox1->Text += (i + ". \n");}
改行しません。どうしてでしょうか?
改行しません。どうしてでしょうか?
409デフォルトの名無しさん
2011/10/30(日) 21:39:23.47 \r\nと書かないといけないのですね
ありがとうございました
ありがとうございました
410デフォルトの名無しさん
2011/10/31(月) 01:30:07.13 WCHAR *g; *g= this->textBox1->Text->ToCharArray()[0] ;
コンパイルは通るし画面のテキストボックスにも文字はちゃんと表示されてるのに
オブジェクト参照がオブジェクト インスタンスに設定されていません とエラーが出て止まります。どうすれば良いですか?
コンパイルは通るし画面のテキストボックスにも文字はちゃんと表示されてるのに
オブジェクト参照がオブジェクト インスタンスに設定されていません とエラーが出て止まります。どうすれば良いですか?
411デフォルトの名無しさん
2011/10/31(月) 02:45:15.47 ぬるぽ
412デフォルトの名無しさん
2011/10/31(月) 02:53:26.62 ちょwwぬるぽじゃなくて教えれwww
413デフォルトの名無しさん
2011/10/31(月) 06:25:43.59 ここまであからさまなぬるぽはないわ
414デフォルトの名無しさん
2011/10/31(月) 06:27:02.15 逝ってよし
415デフォルトの名無しさん
2011/10/31(月) 08:46:35.87 まぁ、pin_ptr が何のためにあるのか、という話だな
416デフォルトの名無しさん
2011/10/31(月) 23:46:48.11 C++/CLIのプロジェクトに
C#のソースも追加出来ますが(Prof以上のみ?)、
C++/CLIからそのC#のクラスを使えますか?
C#からC++/CLIのクラスは使えるようですが・・・
C#のソースも追加出来ますが(Prof以上のみ?)、
C++/CLIからそのC#のクラスを使えますか?
C#からC++/CLIのクラスは使えるようですが・・・
417デフォルトの名無しさん
2011/11/01(火) 00:03:00.11 C#のソースは知らんが、C++/CLIから.netのクラスやら機能を使うのは.netの機能使うのと同じ
418デフォルトの名無しさん
2011/11/01(火) 00:03:25.92 プロジェクトに追加するだけなら自由だが。
混ぜてコンパイルは無理。
dllを参照して使用するのは相互に可能。
混ぜてコンパイルは無理。
dllを参照して使用するのは相互に可能。
419デフォルトの名無しさん
2011/11/01(火) 00:35:20.55 やっぱ使えませんか
大人しくプロジェクト分けるしかないのですね・・・
大人しくプロジェクト分けるしかないのですね・・・
420デフォルトの名無しさん
2011/11/06(日) 15:39:11.10 アプリ起動中にpictureBox内に矩形を表示させておきたいのですが
どこにコードを書けばいいですか?
pictureBox_Paint内だと起動直後の一瞬しか表示されません
どこにコードを書けばいいですか?
pictureBox_Paint内だと起動直後の一瞬しか表示されません
421デフォルトの名無しさん
2011/11/06(日) 15:50:26.29 大方CreateGraphicsとか使ってるんじゃね
422デフォルトの名無しさん
2011/11/06(日) 16:39:49.74 その通りでした。ご指摘ありがとうございました
423デフォルトの名無しさん
2011/11/09(水) 16:12:12.50 インテリセンスマダー?
424デフォルトの名無しさん
2011/11/10(木) 07:34:24.84 質問です。
ネイティブ(アンマネージド)なC++の静的ライブラリを
C++/CLIでリンクして使うと変な所で死んだりするんだけど、
こういう事しちゃだめなのでしょうか?
一旦ネイティブなDLLを作って、そこを介して呼べば死なないのですが・・・。
そのライブラリは実装を隠蔽するため
クラスのインタフェース部分のみ公開して、
インスタンスの生成と開放を関数化してあるのですが、
つまりはnew/deleteがライブラリ内で実行され、
ライブラリ内でnewした結果を返し、マネージドコード内で保持し、
そのポインタをライブラリに渡してdeleteしてもらう形になっています。
よく分からないのは、わざとnewをせずポインタをNULLで初期化したままにしておき、
「NULLでなければ開放関数を呼ぶ」というコードを書いただけでも、
そこで死んでしまうのです。(NULLなので開放関数は呼ばれない!)
vectorヘッダをインクルードするかしないかで、死んだり死ななかったりと、
挙動がおかしすぎて正直よく分からない状況です。
ネイティブ(アンマネージド)なC++の静的ライブラリを
C++/CLIでリンクして使うと変な所で死んだりするんだけど、
こういう事しちゃだめなのでしょうか?
一旦ネイティブなDLLを作って、そこを介して呼べば死なないのですが・・・。
そのライブラリは実装を隠蔽するため
クラスのインタフェース部分のみ公開して、
インスタンスの生成と開放を関数化してあるのですが、
つまりはnew/deleteがライブラリ内で実行され、
ライブラリ内でnewした結果を返し、マネージドコード内で保持し、
そのポインタをライブラリに渡してdeleteしてもらう形になっています。
よく分からないのは、わざとnewをせずポインタをNULLで初期化したままにしておき、
「NULLでなければ開放関数を呼ぶ」というコードを書いただけでも、
そこで死んでしまうのです。(NULLなので開放関数は呼ばれない!)
vectorヘッダをインクルードするかしないかで、死んだり死ななかったりと、
挙動がおかしすぎて正直よく分からない状況です。
425デフォルトの名無しさん
2011/11/10(木) 16:05:38.55 ファイナライザが別スレッドから呼ばれるからとかじゃない
426デフォルトの名無しさん
2011/11/12(土) 18:54:13.34 using使ってるのでそこは大丈夫だと思います
427デフォルトの名無しさん
2011/11/12(土) 23:05:46.09 (gcnew Form1)->Show();
で作成されたフォームに
元のフォームにある文字列変数を渡す方法があったら教えてください
で作成されたフォームに
元のフォームにある文字列変数を渡す方法があったら教えてください
428デフォルトの名無しさん
2011/11/12(土) 23:10:34.52 コンストラクタの引数で渡すかプロパティ定義して渡す
つかそれだとC#もC++もさっぱりだよね? ならまだ遅くないから今すぐC#に乗り換えること。
つかそれだとC#もC++もさっぱりだよね? ならまだ遅くないから今すぐC#に乗り換えること。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 神田沙也加さん元恋人で元俳優の前山剛久 六本木のメンズラウンジ勤務を報告「真叶(まなと)です。よろしく」 [muffin★]
- 地震 [Hitzeschleier★]
- 変な人「俺は正しい!お前らは間違っている!」←大体こいつのほうが迷惑で間違ってる件について
- ココアさん好き好き大好き
- ひまだねー
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- 「妨」という字が女へんという事実…
- (´・ω・`)おはよ
