【.NET】 C++/CLI について語ろうぜ 【最適】at TECH
【.NET】 C++/CLI について語ろうぜ 【最適】 - 暇つぶし2ch910:904≠899
06/03/10 10:24:15
>>909 pure でやるなら、既存のライブラリの多くを
あきらめるってことなので、俺なら C# を選択する。

911:デフォルトの名無しさん
06/03/10 10:28:38
>あきらめるってことなので、俺なら C# を選択する。

ソースコードの価値ってのは既存コードだったり、
環境変わってもコンパイルしたりすると動くことだったりするのに、
馬の骨C丼に何の価値があるのかと。

912:デフォルトの名無しさん
06/03/10 10:29:34
スレリンク(tech板:1番)
         ,. -‐'''''""¨¨¨ヽ
         (.___,,,... -ァァフ|          あ…ありのまま 今 起こった事を話すぜ!
          |i i|    }! }} //|
         |l、{   j} /,,ィ//|       『.NET framework 2.0を入れたと思ったら
        i|:!ヾ、_ノ/ u {:}//ヘ        何故かノータッチデプロイメントがぶっ壊れた』
        |リ u' }  ,ノ _,!V,ハ |
       /´fト、_{ル{,ィ'eラ , タ人        な… 何を言ってるのか わからねーと思うが
     /'   ヾ|宀| {´,)⌒`/ |<ヽトiゝ        おれも 何をされたのか わからなかった…
    ,゙  / )ヽ iLレ  u' | | ヾlトハ〉
     |/_/  ハ !ニ⊇ '/:}  V:::::ヽ        頭がどうにかなりそうだった…
    // 二二二7'T'' /u' __ /:::::::/`ヽ
   /'´r -―一ァ‐゙T´ '"´ /::::/-‐  \   移植や修正が必要だとか
   / //   广¨´  /'   /:::::/´ ̄`ヽ ⌒ヽ    そんなチャチなもんじゃあ 断じてねえ
  ノ ' /  ノ:::::`ー-、___/::::://       ヽ  }
_/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::...       イ  もっと恐ろしいものの 片鱗を味わったぜ…

913:904≠899
06/03/10 10:31:16
>>911 だから今俺は C++/CLI 使ってるんだってば。

914:デフォルトの名無しさん
06/03/10 10:37:16
>>913
で、C++/CLI複雑じゃない?それだけ価値あるということ?

915:904≠899
06/03/10 10:38:48
>>914 使わざるを得ない場面があるということ。
あと、マゾにはたまらないって言うこと。

916:デフォルトの名無しさん
06/03/10 11:13:29
自分で判断できないような人はC#やっといた方がいい。
C++/CLIは必要があって使うもの。

917:デフォルトの名無しさん
06/03/10 11:29:40
既存のライブラリの多くを諦める事になるからC♯って意味分からん。
C♯だったら、多くを諦めるどころか、全部諦めにゃならんだろw
ヤケクソやってんのか?w

918:904≠899
06/03/10 11:45:23
>917 そんなこといってないじゃん。
既存のライブラリを使いたいから /clr:pure あきらめて
C++/CLI つかってます、って書いてんのに。

919:デフォルトの名無しさん
06/03/10 11:56:18
ヒント;M$ジレンマ

920:デフォルトの名無しさん
06/03/10 13:48:25
>>918
君は正しい。ただあんまり一生懸命レスすること無い。疲れるだけだから。

921:デフォルトの名無しさん
06/03/10 19:38:26
昔:VB-VC-Windwos
今:.NET Framework-C++/CLI-Windows



922:デフォルトの名無しさん
06/03/10 20:36:09
伸びてると思ったら不毛な議論が続いてたようだな。
アンチが何したいのかわからんがこんなところで騒いでも無駄ですよ

923:デフォルトの名無しさん
06/03/11 09:58:42
皆さんはやっぱり、C++/CLIでもファイルの入出力とか自作のライブラリー等
作成されてるのですか?Stream オブジェクトとか、MSDN見る限り、素人目には
既に完成されていると思うのですが、個人的にパラメータを渡して読み込み、書き込み
モードで開いたりとかテキストモードで開いたり、バイナリモードで開いたりとか、やったほうがもっと楽でミスも少なくて、いいのかなぁーと思ったりするのですが、
いかがなものでしょう?


924:デフォルトの名無しさん
06/03/11 10:07:31
逆に聞くが>>923は今まで入出力に自作のライブラリを使っていたのか?

925:デフォルトの名無しさん
06/03/11 10:10:33
>>923 C++/CLI でも、っていうか、マネージドの領域では
.NET Framework べったりのプログラミングしてます。

C++/CLI 使うメリットはネイティブとの橋渡しができる
ことだと思ってるんで、ネイティブの領域では
従来通りの自作のライブラリーを多用しています。

926:デフォルトの名無しさん
06/03/11 10:36:50
>>923
何言っているんだかわからん。
Streamのどこが気に入らなくて、どういうことをやっているわけ?

927:デフォルトの名無しさん
06/03/11 10:47:06
>>926 抽象化されていないもっとファイルシステムべったりの
いじり方をしたいのでは、と推測するけど、まぁそういうことが
したけりゃ Windows API 叩くのも C の標準ライブラリ
叩くのも低レベルファイルアクセス関数群叩くのも
C++ の標準 I/O ストリーム使うのも自由、としか言いようがないな。


928:デフォルトの名無しさん
06/03/11 20:59:39
テキストボックスに
0
1
2
3
4
5
6
7
8
9
と表示したいけど

for( int i = 0 ; i < 10 ; i++ ){
  String^arg = Convert::ToString(i);
  textBox1->Text = arg + "\r\n";
}
これだと
9
しか表示できないんですよね(;´∀`)
うーんわからん


929:デフォルトの名無しさん
06/03/11 21:03:49
これはひどい

930:デフォルトの名無しさん
06/03/11 21:04:01
> textBox1->Text = arg + "\r\n"; 

931:デフォルトの名無しさん
06/03/11 21:05:39
>>928 そりゃ、Text に最後に設定されるのが
"9\r\n" だからだろ。
arg = じゃなくて arg += とかじゃないの?
と、試しもせずにカキコ

932:デフォルトの名無しさん
06/03/11 21:09:22
>>931
で、そのargはどこに行くんだ

933:928
06/03/11 21:17:24
>>930さん
>>931さん
残念ですが巧くいきません、同じ結果です

934:デフォルトの名無しさん
06/03/11 21:27:42
textBox1->Add(arg);

935:デフォルトの名無しさん
06/03/11 21:31:10
StringBuilder^ builder = gcnew StringBuilder();

for(int i = 0;i < 10; i ++)
{
 builder->AppendFormat("{1}{0}",System::Environment::NewLine,i.ToString());
}
this->textBox1->Text = builder->ToString();

936:928
06/03/11 21:58:21
>>935さん
ありがと、巧くいきました
StringBuilderクラス初めて知りました
builder->AppendFormat("{1}{0}",System::Environment::NewLine,i.ToString());
の"{1}{0}"は何を意味するものですか?


937:デフォルトの名無しさん
06/03/11 22:15:05
>>936
引数の2番目({1})と1番目({0})

.NETでは基礎的なこと。

938:デフォルトの名無しさん
06/03/11 22:21:51
うんざりするほどの教えてクンだな

939:デフォルトの名無しさん
06/03/11 22:28:44
理解していない {1}{0} を教えてもらった通り
使っただけで「うまくいきました」と言える神経が理解出来ない

940:デフォルトの名無しさん
06/03/11 23:07:57
正直、C# に移って .net framework の使い方から勉強してきてほしいものだ
.net framework 総合ってあったよな

941:デフォルトの名無しさん
06/03/11 23:23:19
enum classのインスタンスを
switchの条件式に使うとunsafeにならない?
Reflectorでみたらunsafeになってたんだけど...orz

942:デフォルトの名無しさん
06/03/12 00:01:20
しかし、海外ではC#なんて朽ち果ててるのに、ここは鎖国な人ばかりですか?


943:デフォルトの名無しさん
06/03/12 00:03:12
>>942
じゃ、その海外では何を使ってるの?
あちこちでその書き込み見るんで、
マジで教えて欲しいんだが。

それにここ C++/CLI のスレッドだし。

944:デフォルトの名無しさん
06/03/12 01:06:44
北米でのサンデープログラマはJavaよりもC#が多いってニュースみたことあるけど

945:943
06/03/12 01:14:43
ちなみに、クライアントサイドでのJavaの案件なんて
ほとんど見たこと無い。

946:デフォルトの名無しさん
06/03/12 01:19:23
ref class のデータメンバにどうしてもネイティブクラスの
インスタンスを持たせたいんだけど、混合はできないから
ポインタで持たせるしかない?

ref class ManagedClass {
      中略
      NativeClass* nativeClass;
      中略
};

みたいに。せめて std::auto_ptr つかって

ref class ManagedClass {
      中略
      std::auto_ptr<NativeClass> nativeClass;
      中略
};

って書きたいけど、結局は混合になるからだめなんだよな。


947:デフォルトの名無しさん
06/03/12 01:36:31
gcroot
auto_gcroot

948:デフォルトの名無しさん
06/03/12 02:08:28
>>943

VB。つーか、こんな簡単な事もわからないヤツがいるのか。
日本人同士で馴れ合ってるから、バカになるんだよ。


949:デフォルトの名無しさん
06/03/12 02:38:05
>>948
明らかにどっちもやったことない苦し紛れ臭漂うコメントだな。

950:デフォルトの名無しさん
06/03/12 03:25:39
>>949
いや、ぜんぜん。

つーか、やったことがある・ないって話はしてない。ばかだね。あんた。


951:デフォルトの名無しさん
06/03/12 03:38:45
>>950
ないのならいかに自分が馬鹿な話をしてるかわからんのも仕方ない。

952:デフォルトの名無しさん
06/03/12 03:45:21
>>951
もうチョイ日本語、勉強しましょうねー。

953:952
06/03/12 04:05:27
アンカミス

×>>951
>>952

954:デフォルトの名無しさん
06/03/12 04:05:29
>946
そのためのファイナライザと割り切るしかないんでない
心配なら、管理クラスを別途作って、そこからポインタを受け取ってもいいんだし

955:デフォルトの名無しさん
06/03/12 04:09:20
初歩的な質問ですみませんが、お願いします
hoge_0.txt
hoge_1.txt

hoge_9.txt
という10個のファイルを作ろうと思い
for(int i = 0;i < 10; i ++){
  Stream^ myStream ;
  String^x=Convert::ToString(i);
  StreamWriter^ sw = gcnew StreamWriter ("c:\\hoge_"+x+ ".txt");
  sw->Close();
myStream->Close();
}
(書き込む部分は省略させて貰います)
コンパイルは通りますが、
「オブジェクト参照がオブジェクト インスタンスに設定されていません。」
と表示されてしまいます、
hoge_0.txt一つだけc:\直下に作成されています
どうしてでしょうか?


956:デフォルトの名無しさん
06/03/12 04:13:58
コード見直せ 明らかにおかしいだろ

957:デフォルトの名無しさん
06/03/12 04:15:06
StreamWriterをCloseするときにStreamも一緒にCloseしてるからじゃね。

958:デフォルトの名無しさん
06/03/12 04:16:39
C(++) もやったことないのに C++/CLI に手を出すのは無謀

959:デフォルトの名無しさん
06/03/12 04:17:16
コンパイラさんが myStream が初期化されてないよって警告出さんのか

960:デフォルトの名無しさん
06/03/12 04:24:17
指摘されて今気づきました
Stream^ myStream ;

myStream->Close();
を、おまじないみたいに勘違いしてたようです

961:デフォルトの名無しさん
06/03/12 04:30:55
おまじないとな

962:デフォルトの名無しさん
06/03/12 05:24:46
次スレのテンプレにあれだ、初心者お断りとでも書いとけ。

    ___________________
   |
   |★ 初心者に扱える言語ではありません ★
   |
   | ・初心者はまず C/C++ か C# をしましょう。
   | ・両方とも中級者以上になったら来てください。
   |
   Λ Λ  /
  (,,゚Д゚)⊃ チュウイ!
~/U /
 U U  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄


963:デフォルトの名無しさん
06/03/12 05:42:05
C#はやらんでもええ。

964:デフォルトの名無しさん
06/03/12 06:05:50
>>963
いや、このスレにずっといて必要だと思ったから書いたのだけど?
CLRの基本的なことも分かってないようなやつは危ない。
C#では仕様的に避けられてたり、ふらっとスレでも聞かないような
レベルの質問ばかりじゃん。

んで一番速く理解できるのはC#だし、C++と文法似てるし。

965:デフォルトの名無しさん
06/03/12 08:36:56
というか、移行組にとって辛いのは、.net framework の使い方がわからないというところじゃね?
だから、C++ はわかるけど、それを CLI の流儀でどう書けばいいのかわからなくて、初心者スレ
で聞くような質問をここでしてしまう、と

最近紹介されて知名度が上がってきた分、飛びついてくる奴らがなんかくらくらするような
質問をしてしまうわけで、.net スレへ誘導というのも、言語の垣根を越えた C++/CLI の可能性を
示すという点でいいのかも


966:デフォルトの名無しさん
06/03/12 08:45:29
C++/CLI は C++ しか知らない人がマネージドなプログラムを
書くための言語ではなくて、C++ で仕事してきて、かつ、
C# などで .NET Framework 上で動くプログラムも作ってきて、
両方の資産とノウハウを抱えている人がそれらの分断に悩んで
たどり着くソリューションだと思う。

967:デフォルトの名無しさん
06/03/12 08:52:04
>966
それは漏れもそう思うんだけど、実際にはあの顔文字使う教えてクンみたいなやしが
あれだけ言われても MSDN もチェックせずに気軽に尋ねにきていやがるこのスレの現状を
考えると、あるべき論ではなぁ
スレのふいんきをもっと殺伐させて、気軽に質問できないようにした方がいいかもな
後は、答えるときは罵倒しながら、丁寧に答えるとか

>980 スレ立てよろ

てんぷれ作る?

968:デフォルトの名無しさん
06/03/12 09:51:53
とりあえず教えて君はレベルに関係なくスルーすればいいんじゃないのかな?
排除を全面に出しすぎるのも大人げないというか。

managed C++ → C++/CLI
URLリンク(www.microsoft.com)
[特集] Visual C++ 2005 いままたC++が熱い!「C++/CLI」として大進化したVisual C++ 2005
URLリンク(www.atmarkit.co.jp)
Calling Native Functions from Managed Code
URLリンク(msdn2.microsoft.com)(en-US,VS.80).aspx

C++/Cli Essentials
URLリンク(www.amazon.com)
Shared Source Cli Essentials
URLリンク(www.amazon.co.jp)

C++/CLI設計者のblog
URLリンク(blogs.msdn.com)
URLリンク(blogs.msdn.com)

STL.NET
URLリンク(www.microsoft.com)
URLリンク(www.dinkumware.com)

C++の今後
URLリンク(216.55.183.63)

969:デフォルトの名無しさん
06/03/12 10:03:33
>>1>>964-966 あたりのことをさらっとかいておくとよいのでは?

----------------
C++/CLI は単なる C++ の拡張ではなく、既存の C++ のコード資産と
.NET Framework をはじめとしたマネージドなコード資産の橋渡しを
するものです。.NET Framework でのプログラミングになれていない人は
Visual Basic .NET や C# である程度基礎的な概念を学習してから
取り組む方がよいでしょう。
----------------

とか。

970:デフォルトの名無しさん
06/03/12 10:04:11
>>968 排除は本望じゃないけど、誘導は必要だ、ということで。

971:デフォルトの名無しさん
06/03/12 11:01:01
C# と同じような間隔で XML ドキュメントを書き込んでたら、
C++/CLI では XML ドキュメントってサポートされてないんだね。
そのへんは C++ と同じなんだから当たり前か。

ところで、マウスポインタを識別子の上に持って行ったときに
現れるチップでもコメントを表示して欲しい名x。亜

972:デフォルトの名無しさん
06/03/12 11:21:35
工作員がスゲー。再度言う。C#はやる必要なし。


973:デフォルトの名無しさん
06/03/12 11:30:48
>>972 やってもいいじゃん。

974:デフォルトの名無しさん
06/03/12 11:34:39
はじめからC++/CLIで.NETをはじめたいというのがいても悪くは無いが、
そういう需要があれば、ふらっとC++/CLIとかぐすたれC++/CLIとか別のスレ立てたいね。

975:デフォルトの名無しさん
06/03/12 11:46:42
>>974
。゚+.(・∀・)゚+.゚イイ!!
行き場が無くて、彷徨っています。
スレ立てオナガイシマス


976:デフォルトの名無しさん
06/03/12 12:06:17
>>972
何で工作員?C/C++、C#両方使える上で最適だと思える判断をして書いて
いるんだけど?
C++を分かっていて、C#分かってれば実際問題仕様書読めばかけるから。

どう考えても最短距離だし、C++/CLIはC++のスタンス上危険なコードも
許容するからそれが危険であるとも分からないし、特殊な仕様が結構ある。

しかも、はっきりいって質問のレベルがふらっとC#スレにも劣ってるから。
他言語ならまだ入門書を読め、といえばすむがC++/CLIにそんなものあるの?

C#初心者よりレベルが低い状態で、情報も少ないのに、C#より考えることが
大量にあって複雑なC++/CLIが何とかなるとお思いで?

977:デフォルトの名無しさん
06/03/12 12:51:20
C++/CLIをやるには.NETの知識が必用だが、
その知識を得るための情報はC#を対象に書かれていることが多い。
つまり必然的にC#の知識が必用になる。

978:デフォルトの名無しさん
06/03/12 13:02:42
C++/CLIは合の子だから、
C++とCLIのそれぞれの特徴を知る必要がある。
C#はCLIへの近道だと思う。まあC#使う必要はないが。

979:デフォルトの名無しさん
06/03/12 13:17:30
けどC++ができるのであればC#は大したことは無いと思う。

980:デフォルトの名無しさん
06/03/12 14:13:45
いや、だから言語仕様が大したことかとかいってるんじゃなくて、
CLI の流儀、.net framework の流儀をつかむために
いちど純 .net のをやっておいたほうがいいんではということでしょ。

981:デフォルトの名無しさん
06/03/12 14:22:30
やっぱり、単に日本だけで馴れ合ってるだけじゃん。
C++/CLIの資料が少ないから、C#で代用しろ?

現実的だが、人に勧めるような話じゃないことに気がつけよ。
C#なぞという無用な知識を入れる必要は無し。

C++/CLIの資料はあるだろ? managedの時代なら C# が参考になるが…、C++/CLIになっても必要なのか?


982:デフォルトの名無しさん
06/03/12 14:38:16
>>981
もうチョイ日本語、勉強しましょうねー。

983:デフォルトの名無しさん
06/03/12 14:52:35
一度もアセンブラを使ったことがない人に
ポインタの具体的なイメージを持ってもらうのは困難。

同じように一度も C# や VB.NET のような
.NET Framework を想定した元を使ったことの無い人に
マネージドなプログラミングについてのイメージを持ってもらうのは困難。

984:デフォルトの名無しさん
06/03/12 15:02:29
C#をというより、クラスライブラリの使い方レベルの質問は受け付けたくないというの話さ。
次スレと、それとは別に初心者用スレを立ててくるよ。それでいいだろう?

985:デフォルトの名無しさん
06/03/12 15:25:25
くだらねー。そんなことで C# を薦めるな。


986:デフォルトの名無しさん
06/03/12 15:27:48
とりあえず初心者スレを立ててきた。

くだすれC++/CLI(初心者用)
スレリンク(tech板)l50

連続でスレ立てができなようだから、次スレはもう少し待って。

987:デフォルトの名無しさん
06/03/12 15:28:21
>>985
じゃ、おまいさんは何をすすめるお?
J# ? プギャー(AA略

988:986
06/03/12 15:50:33
連続規制でスレが建てられないのでだれか次の内容で頼みます。
2 に >>968 の内容もアップしてあげてください。
---
C++/CLI について語ろうぜ  Part2

おそらく、.NET開発でデファクトスタンダードに最も近い 
であろうC++/CLIについて語ろうぜ! 

このスレはC++および.NET Frameworkについて一定以上の知識を持っている人が対象となります。
.NETのクラスライブラリの使い方といった質問は姉妹スレ「くだすれC++/CLI(初心者用)」に
お願いします。

前スレッドはこちら 
スレリンク(tech板)l50

姉妹スレ
くだすれC++/CLI(初心者用)
スレリンク(tech板)l50
managed C++ やろうぜ!! 002
スレリンク(tech板)l50

989:デフォルトの名無しさん
06/03/12 16:06:36
>>988
Thanks ☆☆** v( ̄ー ̄)v**☆☆ Thanks
d(゚Д゚ )☆スペシャルサンクス☆( ゚Д゚)b
♪♪♪ d(`Д´)b♪♪♪サンキュ


990:デフォルトの名無しさん
06/03/12 16:08:02
>>988
立ててみるわ。

991:990
06/03/12 16:09:29
立てた。
スレリンク(tech板)


992:990
06/03/12 16:10:53
>>968もコピペしといた。
不足分はよろしく。

993:デフォルトの名無しさん
06/03/12 16:43:41
>>987
そうやって、脳内で勝手に盛り上がって楽しいか? なんか変な薬でも飲んでるのか? 

飲んでるなら止めなさい。
飲んでないなら医者に行って飲みなさい。


994:デフォルトの名無しさん
06/03/12 17:53:31
>>987
J# 使う奴は氏ね

995:デフォルトの名無しさん
06/03/12 17:54:41
J#使ったことない俺にだって、J#の中傷ぐらい非難されずに可能なのだ

996:デフォルトの名無しさん
06/03/12 18:21:29
ヒント:擁護する人がいない

997:デフォルトの名無しさん
06/03/12 18:32:44
誰も使っていない言語を意地で維持する必用は無いと思うんだがな。
金と時間の無駄。

998:デフォルトの名無しさん
06/03/12 18:37:23
j#は 1.1.x 互換じゃ使いようもないし、System系の名前空間のクラスを使うともうJavaには見えないね。

他に敵を作って内紛のタゲそらしをするのは常套手段だな。まるで中共政府のようだ

999:デフォルトの名無しさん
06/03/12 18:38:42
1000get

1000:デフォルトの名無しさん
06/03/12 18:39:03
ぬるぽ

1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch