[csharpll:0335] <fyi> C++/CLI : ISO化モメてる
- Subject:
- [csharpll:0335] <fyi> C++/CLI : ISO化モメてる
- From:
- FUKUDA, Fumiki <fukuda.fm@...>
- Date:
- Tue, 11 Apr 2006 14:31:50 +0900
- X-Mailer:
- Microsoft Outlook Express 6.00.2800.1506
- Message-Id:
- <05ff01c65d29$3c1a80d0$e5d2060a‐at‐stf.ncos.nec.co.jp>
επιστημηです。
C++標準化会議@ベルリン にて、C++/CLIが話題に上がったそうな。
ISO化に反対する勢力もあるみたい。反対派の言い分は:
「C++/CLI は CLIのC++バインディング/C++のスーパーセット/C++の拡張ではなく、
"C++に似ている新しい言語であること"をマイクロソフトは認め、
C++という名前は使うな」
ってことらしい。
さらに反対派は "C++/CLIの新しいキーワードを使うことなく、
C++と C++/CLI で動作が異なる" 例をあげてます:
template<typename T>
void f( T t ) { std::cout << t << std::endl; }
f( "hello" + 4 );
// C++: char * t = "o"
// C++/CLI: System::String t = "hello4"
f( 2 + "hello" );
// C++: char * t = "llo"
// C++/CLI: System::String t = "2hello"
…なるほど、C++/CLIでは"hello"がStringに暗黙変換
されるのが('+'より)先だから…これは確かにマズいよね。
C++標準化会議@ベルリン にて、C++/CLIが話題に上がったそうな。
ISO化に反対する勢力もあるみたい。反対派の言い分は:
「C++/CLI は CLIのC++バインディング/C++のスーパーセット/C++の拡張ではなく、
"C++に似ている新しい言語であること"をマイクロソフトは認め、
C++という名前は使うな」
ってことらしい。
さらに反対派は "C++/CLIの新しいキーワードを使うことなく、
C++と C++/CLI で動作が異なる" 例をあげてます:
template<typename T>
void f( T t ) { std::cout << t << std::endl; }
f( "hello" + 4 );
// C++: char * t = "o"
// C++/CLI: System::String t = "hello4"
f( 2 + "hello" );
// C++: char * t = "llo"
// C++/CLI: System::String t = "2hello"
…なるほど、C++/CLIでは"hello"がStringに暗黙変換
されるのが('+'より)先だから…これは確かにマズいよね。
▼ スレッド
- 335: C++標準化会議@ベルリン にて、C++/CLIが話題に上がったそうな。 ISO化に反対する勢力もあるみた FUKUDA, Fumiki
- └336: おお、なんか、Pure Java 運動みたいですね(w Objective-C++ とかも C++ を名乗るなとか言われてしまう 宮嶋 隆
- └337: んむ、ISOの仲間入りを目論んでいるとしたら、 C++/CLIと同じ突き上げを喰らうに違いないす。 FUKUDA, Fumiki
- └338: 林檎の会社がそんなことするはずないので、大丈夫でしょう。 Objective-C++ は C++/CLI にとてもよ 宮嶋 隆
- └339: んむ。この件に限れば、たとえばManaged C++みたく S"hello" って書けば System::Stringリテラル、書か FUKUDA, Fumiki
- └340: http://www.research.att.com/~bs/bs_faq.html#CppCLI ↑ここって Bjarne Stroustrup 氏のとこですよね? 私の英語力 Shinichi Aoyagi
- ├341: ぁぃ、ベルリン会議に出席してたメンバによると 「Bjarneセンセ、反対派の連中をせっせとなだ FUKUDA, Fumiki
- └342: Bjarne Stroustrup 氏自身は、拡張はライブラリ形式で最低限の インターフェイスを付与する形式が 宮嶋 隆
- └343: んー、"C++のスーパーセット"を名乗るからには C++コードは ほとんどそのまま通り/かつ同じ挙動 FUKUDA, Fumiki