[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 17:12 / Filesize : 240 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【.NET】 C++/CLI について語ろうぜ 【最適】



1 名前:デフォルトの名無しさん [2005/09/11(日) 23:54:01 ]
おそらく、.NET開発でデファクトスタンダードに最も近い
であろうC++/CLIについて語ろうぜ!

516 名前:デフォルトの名無しさん mailto:sage [2006/02/03(金) 23:44:42 ]
>515 は違った。genericsは背景型が System::Object型であることを前提としており、
コンパイル時では閉じない限り、型が確定しない
そこら辺が、文字列置き換えの template とは性質が違う

517 名前:512 mailto:sage [2006/02/04(土) 02:33:08 ]
>>516
なるほどなっとくしました。
ありがとうございました。

System::Collections::Generic::IEnumerator<T>
などでcovariant return valueが発生したときはどうしたらいいん...orz


518 名前:デフォルトの名無しさん mailto:sage [2006/02/04(土) 02:45:42 ]
つーか、512よ。インターフェイスで拘束されているわけでもない不定の FN 型の fn
のメソッドが呼び出せるわけないだろ?

>517 は具体的な例でしてくれないと状況がわからん

519 名前:512 mailto:sage [2006/02/04(土) 13:45:57 ]
>>518
すいません。ファンクタのconvariantなケースでなくて、
C++/CLIで一般に遭遇した場合という意味です。
以下のような感じでやってみたのですが、インターフェイスの実装ができませんでした。
他言語だとどうなるのか調べんとだめかな...
//NG
typedef String^ MyType;
typedef System::Collections::Generic::IEnumerator<MyType> MyEnumeratorType;
typedef System::Collections::Generic::IEnumerable<MyType> MyEnumerableType;
//OK
//typedef Object^ MyType;
//typedef System::Collections::IEnumerator MyEnumeratorType;
//typedef System::Collections::IEnumerable MyEnumerableType;

ref struct MyTest :public MyEnumerableType
{
ref struct MyEnumerator : public MyEnumeratorType
{
virtual property MyType Current { MyType get () { return nullptr; } }
virtual bool MoveNext(){ return false; }
virtual void Reset(){}
};
virtual MyEnumeratorType^ GetEnumerator() { return gcnew MyEnumerator();}
};


520 名前:519 mailto:sage [2006/02/04(土) 15:03:57 ]
private: virtual Object^ System::Collections::IEnumerator::Current { Object^ get() sealed {return nullptr;} }
という風にC#を真似てみたけどだめみたいでした。
以下はC#でのサンプル

class MyTest :System.Collections.Generic.IEnumerable<string>
{
class MyEnumerator :System.Collections.Generic.IEnumerator<string>
{
public virtual string Current { get { return null; } }
public virtual bool MoveNext(){ return false; }
public virtual void Reset(){}
public virtual void Dispose(){}
object System.Collections.IEnumerator.Current { get { return null; } }
};
public virtual System.Collections.Generic.IEnumerator<string> GetEnumerator(){ return new MyEnumerator();}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return new MyEnumerator(); }
};

521 名前:519 mailto:sage [2006/02/04(土) 16:15:08 ]
covariant return value の場合、2段階で実装すればなんとか可能でした。

ref struct MyTestBase :public System::Collections::IEnumerable
{
ref struct MyEnumeratorBase :public System::Collections::IEnumerator
{
virtual property Object^ Current { Object^ get () { return nullptr; } }
virtual bool MoveNext(){ return false; }
virtual void Reset(){}
};
virtual System::Collections::IEnumerator^ GetEnumerator() { return gcnew MyEnumeratorBase();}
};

ref struct MyTest :public MyTestBase,System::Collections::Generic::IEnumerable<String^>
{
ref struct MyEnumerator:public MyEnumeratorBase,public System::Collections::Generic::IEnumerator<String^>
{
virtual property String^ Current { String^ get() new {return nullptr;} }
virtual ~MyEnumerator(){}
};
virtual System::Collections::Generic::IEnumerator<String^>^ GetEnumerator() new {return gcnew MyEnumerator();}
};

522 名前:デフォルトの名無しさん [2006/02/04(土) 18:01:17 ]
managed C++ やろうぜ!! 002
ttp://pc8.2ch.net/test/read.cgi/tech/1139043535/l50


523 名前:デフォルトの名無しさん [2006/02/04(土) 18:07:52 ]
ref classのメソッドでEnumWindowsを使おうとしてます
コールバック関数をクラスのメソッド、LPARAMをこのクラスのポインタとしたいのですが
いい方法はありますでしょうか?

524 名前:519 mailto:sage [2006/02/04(土) 21:59:53 ]
値型だとインターフェイスからしか派生できないから
521の手法使えないね...orz

値型なら
Type<int,Type<int,int> >と記述できたのに
Type<int,Type<int,int>^ > または Type<int,Type<int,int>^ >^
とするしかないか...orz




525 名前:デフォルトの名無しさん mailto:sage [2006/02/04(土) 22:31:14 ]
>>523
P/Invokeの場合にはcallbackにはdelegateを使うんだっけな。
C++/CLIの場合はコールバック用のクラスとメソッドは普通のclassで作って
ref classに包含したほうが楽だ。

526 名前:デフォルトの名無しさん mailto:sage [2006/02/04(土) 22:33:29 ]
>523
過去ログにがいしゅつ

527 名前:523 mailto:sage [2006/02/04(土) 23:47:58 ]
>>525
ありがとうございます
チャレンジしてみます。

528 名前:523 mailto:sage [2006/02/05(日) 02:31:27 ]
delegateとコールバックで検索したら見つかりました
www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconusingcallbackfunctions.asp

529 名前:デフォルトの名無しさん mailto:sage [2006/02/05(日) 19:43:18 ]
generic parameterからgcnewできないと思ったら
new制約なんてあったんだね。
C#にあるみたいなんで試してみたらできたよ。

generic <typename T>where T : gcnew()
ref class A
{A(){ T t = gcnew T();}};


530 名前:デフォルトの名無しさん [2006/02/05(日) 23:48:54 ]
System.Windows.Forms.ShowDialog()をした時にタスクバーに
Windowが追加されちゃいます
タスクバーに出てこない方法ってりますか?

531 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 00:31:03 ]
>>530
ShowInTaskbar

532 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 01:08:43 ]
>>531
さんくす!

533 名前:デフォルトの名無しさん [2006/02/06(月) 01:41:27 ]
C++プログラマーには二種類いるわけ。
C++をベターCとして使う人とC++の機能を目一杯使う人。
俺はベターC派なんだな。
C++の機能は必要最小限しか使わない。
特に枯れてない最新技術はまず使わない。
そして必ずGCをかます。
これは俺というよりも会社の方針なんだわ。
実の所、C++を完璧に使いこなせるPGはほとんどいない。
皆、言語の一角に住み着いてプログラミングする。
これが大規模な開発になるとデスマの原因になるんだな。
デスマを防ぐためにあえて制限を設ける。
俺は会社の方針は正しいと思っている。

534 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 03:45:59 ]
C++/CLIだと値クラスのプロパティとインデクサををref化できるね。
C#ではやり方が悪いのかできなかった。言語思想が違うためだろうか
これができないとインデクサで変更を扱う値型のコンテナが作れない気がするんだが...

value struct Val{int val;};

value struct Test
{
void test(){ Test test;test[100].myt.val=200;Console::WriteLine(test.myt.val); }
Val myt;
property Val% default[int]{ Val% get(int index){ return myt; } }
};



535 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 09:34:19 ]
sage

536 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 12:59:49 ]
Equals を使うな。使う事を推奨するな。
www.ailight.jp/blog/kazuk/archive/2006/01/31/11043.as ...


537 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 15:53:01 ]
>>536
リンク修正
www.ailight.jp/blog/kazuk/archive/2006/01/31/11043.aspx
www.ailight.jp/blog/kazuk/archive/2006/02/01.aspx

538 名前:デフォルトの名無しさん [2006/02/06(月) 16:16:06 ]
ようするにさらし上げ?

539 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 17:05:29 ]
>>534
setするほうのプロパティを作ればよいだけではないのか?

540 名前:534 mailto:sage [2006/02/06(月) 19:13:17 ]
>>539
それだとプロパティへの代入はできるけど、プロパティを介する変更ができないと思う。
Val%をValに変更してsetをつけても、test[100].val=200;だと変更できない
Val tmp;tmp.val=200; test[100]=tmp; なら変更可能だけど...

問題なさそうで問題あるケース
generic <typename T1,typename T2> value struct M
{T2 myt;
property T2% default[T1]{
T2% get(T1 t1) { return myt; }
void set(T1 t1,T2% val){myt = val;}}
};
T2%だと M<int,M<int,int>> m; int i=100; m[100][100]=i; //と書ける //ただ変数にしないといけない難点が...
T2だと m[100][100]=100;と書けるが変更できない


541 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 19:53:28 ]
海外の大御所がある雑誌で言った。

「私はもう二度と .Net の記事を書かない。」

マイクロソフトにだまされてる奴ら、お疲れ。


542 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 20:05:34 ]
>>541
大御所が誰だか教えて

543 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 20:13:56 ]
プラウガもC++/CLIやってるけどな。
www.dinkumware.com/

やつらはVC++用ライブラリにたずさわっているし、
C++/CLIはEMCAの標準化に関与しているから。

まあC++/CLIはいい言語拡張と思わないけれど、
managed C++の将来のなさには流石に脱帽。

544 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 20:33:14 ]
将来も何もmanaged C++はC++/CLIまでの暫定版なんだから、
managed C++の将来はC++/CLIじゃないか。
managed C++は OldSyntaxだべさ。



545 名前:デフォルトの名無しさん [2006/02/06(月) 20:39:32 ]
どれかひとつ選ばなければならないとしたら不本意ながらC++/CLIを選ぶしかないわな。

546 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 20:46:22 ]
レヴューリリースだわな、managed C++は。

547 名前:デフォルトの名無しさん [2006/02/06(月) 20:49:30 ]
正直、記憶力がおいつかない。

548 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 20:55:37 ]
でも、サービスパックも出てない VisualStudioを使うほどバカじゃなし。
MS製以外でコンパイル通るヤツってある?

549 名前:デフォルトの名無しさん mailto:sage [2006/02/06(月) 23:39:31 ]
>>548
無いよ。バカ

550 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 00:04:25 ]
バカじゃん

551 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 01:01:12 ]
おまえら、VS2005マジで使うの? バカじゃん。
すでに、MSはSP出荷を確約してるんだぞ。

552 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 01:44:04 ]
>>551
じーっと枯れるのまってろこのうすらタコ!

553 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 02:14:49 ]
>>548
VB6でも使っとけよ wwww

554 名前:デフォルトの名無しさん [2006/02/07(火) 02:41:12 ]
>>552
N88 BASIC



555 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 10:21:32 ]
バカが3匹。

556 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 10:51:33 ]
Win32コンソールアプリケーションの

int _tmain(int argc, _TCHAR* argv[])

int main(int argc, char* argv[])
にしちゃいますけど。いいですよね?引数がアルファとかヌメリックなら。



557 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 11:32:34 ]
漏れは
int main(const int argc, const char* const argv[])

558 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 13:00:33 ]
>>557
そこまでいくなら戻り値もconstにしてはどうか?

559 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 13:21:59 ]
>>558 参照返しじゃないから意味なし。

560 名前:558 mailto:sage [2006/02/07(火) 13:27:44 ]
>>559
ああ、確かに意味は無いなw

でも、argcもconstにしてるけど、これも意味が無いから、
それをさらに徹底させるって意味で返り値もconstにすればいいのにー
っと思っただけ

561 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 14:04:04 ]
argcの場合、意義はともかくプログラム上の意味が変わる。

562 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 14:21:19 ]
うっかり書き換えるとコンパイラにゴルァされるとか

563 名前:558 mailto:sage [2006/02/07(火) 14:26:48 ]
確かに関数内では意味が変わる...か。
関数のオーバーロードでは同一視されるから一緒と思ってたけど、
内部の事は忘れてた。thanks

564 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 15:01:05 ]
>>558 お前素直な奴だな



565 名前:デフォルトの名無しさん mailto:sage [2006/02/08(水) 00:54:04 ]
そこでconst_castの登場だな

566 名前:デフォルトの名無しさん mailto:sage [2006/02/08(水) 18:26:06 ]
全部ILで書こうぜ

567 名前:デフォルトの名無しさん mailto:sage [2006/02/08(水) 19:24:23 ]
遅いからヤダよ。

568 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 01:52:44 ]
STL/CLIお蔵入り

569 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 04:28:08 ]
固定長配列はcli::array以外に用意されてない?



570 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 11:58:31 ]
>568

STL.NETは別途配布されるんじゃなかったの?

571 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 12:38:09 ]
BOOST.NETも出たりとか。
正直大混乱。

572 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 13:44:43 ]
正直いってWinXPのSP2入れたくないからとかいう理由で
SP1を使ってる馬鹿と同レベルの理屈だな

新しいものの方がいいに決まってる。たとえバグ込みでも
長い目で見れば将来性の高いほうを選択する方がよい

573 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 17:47:52 ]
>>571

BOOST.NETって何?そんなんあんの?

574 名前:デフォルトの名無しさん mailto:sage [2006/02/09(木) 22:47:44 ]
>>572

その将来性のおかげで、君の部下が次々と止めていくんだがどう責任取るのかね?




575 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 21:58:53 ]
値型にデフォルトコンストラクタと代入演算子を定義できる
.NET言語ってあるんかな?


576 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 22:01:31 ]
フレームワーク内のprivateないくつかの構造体を見ると、
デフォルトコンストラクタ使ってるのがいくつかあるな。

Win32関係の構造体で自分のサイズを設定してるんだが。

577 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 22:20:02 ]
>>575
つIL (ilasm)
まぁぶっちゃけいらないっていうかあってもまずやっちゃいけないしな


578 名前:575 mailto:sage [2006/02/10(金) 23:53:50 ]
>>576,577
どうも

Reflectorでみてみたら
staticコンストラクタで代用しているのはありました。

こんな感じで試してみようかな...
ttp://www.gdncom.jp/general/bbs/ShowPost.aspx?PostID=40822

579 名前:575 mailto:sage [2006/02/11(土) 01:08:41 ]
やってみたけどよくわからんかった。でも
templateの部分特殊化でCLI型が使えるみたいだから、それでcreateすればいいか.

template <typename T> ref struct Type{ T create(); };
template <typename T> ref struct Type<T^>{ T^ create(); };


580 名前:デフォルトの名無しさん [2006/02/11(土) 07:51:31 ]
C++ で boost の shared_ptr とか boost::program_options とか
使いまくりんぐのプログラム作ってきたんだけど、
C++/CLI でそのコード流用できるんですかね?
stl::map とか使いまくりんぐノプログラムは
そのままで動くのか、STL.NET みたいなモノをつかうように
移植しなけりゃならないのか、System::Collections を
使うのが C++/CLI 流なのか・・・・・・

何でも出来るから何使えばいいか迷う。

581 名前:デフォルトの名無しさん [2006/02/11(土) 09:40:08 ]
C++/CLIは便利だと思うが、棲み分けに失敗した感じがするな。
C#で統合するはずが、C++/CLIで統合されるとは…。
本当は.NET対応はC#だけでよかったんだと思う。

582 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 10:25:45 ]
>>580
managedなobjectをどう扱いたいかによるだろ?

例えば数値計算してその結果を3Dグラフ表示するような場合、
数値計算の部分は普通にC++使えばいいけど、(例えばboostなど)
画面表示の部分はどうしてもCLIに頼らないといけない。

C++/CLIは基本的にC++の上位互換と考えていいから。
"spaced keyword"なんていうのは非互換だけどね。


583 名前:デフォルトの名無しさん [2006/02/11(土) 10:29:11 ]
おまえら、どのエディション使ってるの?

584 名前:デフォルトの名無しさん [2006/02/11(土) 10:35:44 ]
>>582 うむ、いっていることは分かる。
まさに数値計算して可視化、ってのは仕事で必要。
しかも膨大な数値計算用のライブラリ(自作+他作)がすでにある。

今一番の問題は、コマンドラインをパーすするために便利な
boost::program_options を C++/CLI コンソールアプリでも
使いたいってことかな(笑



585 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 11:10:32 ]
C++/CLIは、CLIに頼らなければいけない時だけ、
managedなコードを書かなければいけないC++だろ?

embedded C++みたいに言語の機能抜かれているわけじゃないから。

ライブラリであるSTL .NETは、C#やHaskelからも使えるSTLライブラリとして、
C++特有のところは抜かれているけれど。(特殊化関連など)

586 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 11:11:09 ]
>>585
> managedなコードを書かなければいけないC++だろ?

managedなコードも書ける、とも言えるし。

587 名前:デフォルトの名無しさん [2006/02/11(土) 11:15:34 ]
>>585 ふむ、いわれてみればそうだな。
俺があまりにも boost 依存なコードを書きすぎていただけだと思う。

588 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 15:56:27 ]
>>581
いろんな言語が使用できるっていうのが.NETのうたい文句のひとつだったから
C#だけって言うのはいただけない

589 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 16:22:28 ]
馬鹿はスルーしる

590 名前:デフォルトの名無しさん [2006/02/11(土) 16:26:50 ]
.NETって実際複数言語で開発してたりすんの?

591 名前:デフォルトの名無しさん [2006/02/11(土) 16:48:36 ]
>>590 俺はドトネトは C# しか使ってないけど、
俺が使ってるアセンブリが C++/CLI や VB.NET
で作られているかどうかは知らない。

592 名前:デフォルトの名無しさん [2006/02/11(土) 16:53:16 ]
VC++はVC++で作られていますという件はもはや過去のもの?

593 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 17:26:02 ]
「ドトネト」って言う呼び方はアンチっぽいからやめてくれ

594 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 17:31:18 ]
エロビデオのネバスペみたいなもんか。



595 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 17:39:26 ]
Win32APIなどのネイティブ呼び出しをC++/CLIでラップしてあとはC#で開発してる。
windows.h の関数や定数の定義をそのまま使える上にInteropで呼び出しも高速なので
P/Invokeよりぜんぜんいいよ。

ドトネトよりポチネットのほうが可愛い

596 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 18:07:08 ]
>>595
狂おしいほどに同意
アセンブリの中にネイティブコードを突っ込めるから
逆コンパイルにも対抗できるし。


597 名前:デフォルトの名無しさん mailto:sage [2006/02/11(土) 20:57:49 ]
そんなことしたら64bitでそのまま動かないじゃん

598 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 03:52:02 ]
>>597
32bitで何か問題でも?


599 名前:デフォルトの名無しさん [2006/02/12(日) 16:51:41 ]
C++/CLIがNativeとManagedの混合アプリを作るのに優秀なのは理解できるが、
/clr:safe なアプリをあえてC++/CLIで作ることに意味があるのだろうか。

600 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 17:37:42 ]
>>599
特になし。C++/CLIはC++使い慣れてる(C++ライブラリを膨大に抱えてる)人を
.NETに繋ぎとめておくためのもの。

601 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 21:00:01 ]
2003のWin32APIやMFCを2005ExpressEditionで使おうと
頑張ってみたが無理だった。
Win32APIはコンパイル通るけど警告出るし、
MFCに関しては全くお手上げ。


602 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 22:31:04 ]
>>601
WinAPIは2003から持ってこなくても最新のPlatform SDKを入れればいいだろうに。

603 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 23:14:27 ]
C++/CLIはVB.NETで作ったクラスライブラリを呼び出すことも可能?

604 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 23:33:15 ]




605 名前:デフォルトの名無しさん mailto:sage [2006/02/12(日) 23:51:30 ]
>>602
最新のSDK持ってきたら、警告なくなったよ。ありがと。

606 名前:デフォルトの名無しさん mailto:sag [2006/02/13(月) 08:02:58 ]
managed C++ みたいに C++/CLI もやっぱやーめたなんてことにはならんだろうな?
前者はなんか標準化団体には出されてたんだっけ?後者はだされてたよな?

607 名前:デフォルトの名無しさん [2006/02/13(月) 08:05:18 ]
>>605
感謝は言葉ではなく物で示せ。

608 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 12:44:28 ]
>606
今、ISO で標準化の審査中

609 名前:デフォルトの名無しさん mailto:sag [2006/02/13(月) 13:03:53 ]
>>608 それは C++/CLI だよね?
もう Managed C++ はいらんでそ。

610 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 14:01:33 ]
(1)for each( int obj in v)
(2)for each( int^ itr in v)
(3)for each( int% r in v)

for each する場合、どれがお勧め?

611 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 15:26:41 ]
>>609
www.ecma-international.org/publications/standards/Ecma-372.htm
これがISOに提出された。まあISOになる可能性はないと思うけれど。

612 名前:デフォルトの名無しさん mailto:sag [2006/02/13(月) 16:55:39 ]
>>611 あれ?ないの?

613 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 17:22:33 ]
CLI 自体はすでに ISO 標準になってるんだよな。
Java VM も ISO 標準にすればいいのに。
Java 言語とは切り離して。

614 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 18:06:42 ]
で、ISO 標準て何の役に立つの?



615 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 18:07:31 ]
ネームバリュー

616 名前:デフォルトの名無しさん mailto:sage [2006/02/13(月) 18:10:32 ]
実質を無視したネームバリューなら、
Java >>>>>>(壁)>>>>>> C丼(I$O)
だね。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<240KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef