C++/CLI
久しぶりに #using の文字列操作を修正して思ったのですが、VS2008 で追加された marshal_as って別に文字列を変換するための機能に止まらないですよね。 どちらかというと、ネイティブとマネージドの互換ルールの記述スタイルをこのような形で用意しましょ…
できました(w はっきり言って自分でも馬鹿だと思いますが、C++/CLI で Silverlight 2 のアプリケーションを作成することが可能のようです。ちょっと VC のランタイムやらへの依存が残っていそうな雰囲気があるのですが、やってできないことはない、ようで…
C# で null 許容型が導入されています。 これは .net fx への Nullable 型の導入です。つまり、C++/CLI でも使えるはずです。(ぉ というわけで書いてみました。 typedef Nullable intNA; void check( intNA% nuin ) { if ( nuin.HasValue ) { Console::Writ…
VisualStudio 2008 では marshal_as がようやく入ります。 それによって文字列変換がどうなるかというと、 std::string strHello = "Hello, Orcas"; String^ mstr = marshal_as(strHello); std::wstring wstrHello = L"へろぅ、おるかす"; String^ mstr = ma…
http://www.codeproject.com/managedcpp/WorkingWithConfigFiles.asp
CGI移行の段階で消えてしまったコンテンツを復活させました。 トップからは繋げていないアングラ倉庫です(wSTL/CLR 解説資料 http://vene.wankuma.com/prog/STLCLR_Specs.htm わからないところに関しては、原文を参照にしてください。
ちょっと試してみました。 #include <iostream> ref class Test { private: int _value; public: Test() : _value(0) {} property int Value { private: void set(int val) { this->_value = val; } int get() { return this->_value; } } }; int main(array<String^>^ args) { </string^></iostream>…
あまり必要そうにないのですが、ECMA-372 を HTMLHelp 化しました。 まだ、リンクの整理やキーワードの追加をしていないベータ版ですが、変な訳だけど手元に置いておきたいという方、どうぞ。http://vene.wankuma.com/prog/ecma-372.chm これでいつ消えても…
しまった。WebMatrix Japan がサービスを終了していたOTZ 今、ASP.NET 2.0 が使える新しい鯖を探しています。 無料サーバーを適当にゲットしてきますので、C++/CLI 仕様書についてはしばらくお待ちください。 がーん・・・。 とりあえず、慌てて借りた建設予…
ということで、SafeHandle を使った共有メモリ・クラスです。 よく考えると、C++/CLI では普通にクラスにマップするなり、CMemFile 使うなりで、あまり需要はなかったりするんですよね(w
とりあえず、ざっと作ってみました。 かなり手抜きですが、自分用のライブラリを作るときの参考にでもどうぞ。
いろいろといじっているのですが、驚愕の事実に_| ̄|○ ガックシ・・・でした。 CppCodeProvider って、何その、「単にまだ実装されていない」って! それなら、CodeDomProvider::IsDefinedLanguage で true を返すなよ。実装してから定義済みとして認識しや…
ECMA の方から注意書きを追加して欲しいとのことなので、「訳者より」に注意書きの原文と訳文を追加。 http://signe.japan.webmatrixhosting.net/ecma372/StartingState.aspx でも、日本語訳だけ見て ECMA に問い合わせる勇者が、世の中には・・・いるんだろ…
ありがとう。Mr. Jan van den Beld! 迷わず、前進するですよ! 他にもいろいろと問い合わせしてくれた方がおられるようです。 ありがとう、皆さん。これで、公認です。 C++/CLI の仕様書翻訳が消える心配はありません。
MS からは結局返答無しだったので、しないよりはましかと思い、ECMA にも問い合わせ。 どうなるのかな。
つーことで、インストーラすらないコメンタ・アドインです。 http://www.stdblue.net/prog/tools/commenta/StdXmlDocAddin-0.1.LZH うーん、ないよりはましって感じなのかな。 .h に対して、使えます。特に C++/CLI 専用というわけではありません。
まだ、テスト中なのでスルーしてねAddIn ファイル 上のアーカイブに追加 アドイン 壊れてたので公開停止 設定の仕方 1,LZH書庫を My Documents\Visual Studio 2005\Addins で展開する。 2,StdXMLDocAddin.AddIn ファイルを開き、 タグ中にdllへのパスを…
上の報告書を書きながら Linq みたいなことを C++/CLI でやるにはどうするんだろうとか、考えてました。 構文に関しては、 for each を前提に考えてみます。なぜかというと、C++/CLI では 唯一、制御文でありながら IEnumerable の実装を前提としたループを…
これはあくまで個人的な雑感なのですが、STL.NET って要るんですか? C# や VB.NET 用に汎化された STL.NET ならわかるんですけど、混合型の開発予定がある C++/CLI でCLI 用にしか利用できない STL ライブラリは結局テンポラリ・ソリューションでしかなくて…
うぇね的には実は現在のファイナライザの仕様にすっごく不満です。 特にECMA-372でこんな文章を見つけて、むっちゃ腹を立てています。「デストラクタはファイナライザを呼び出すべきです」 じゃ、そういう仕様にしようよ! 確かに、この文章が出てくる理由は…
あまり大きな声では言えませんが、作業を開始しました。 WebMatrix で ASP.NET 2.0 の練習をしながら、作ってます。 http://signe.japan.webmatrixhosting.net/ecma372/Introduction.aspx あまり鯖をいじめないでください(w
なんとなく誤解されている方がいるので C++/CLI ではプロパティは setter, getter ごとにアクセスのレベルを指定できます。 ref class Clazz1 { private: int _value; public: Clazz1() : _value(0) {} property int Value { int get() { return this->_valu…
C++/CLI の2005年1月版仕様書草案では、ドキュメントにするコメントの仕様もついているんですね。今まで Doxygen や NDoc とかのツールを使ってきましたけど、この仕様が標準化されたらドキュメント化コメントの仕様としては始めて標準化されることにな…
ある実用プログラムを Beta1 から Beta2 に作り直したのですが、こんなところでいろいろと修正したことを記述しておきます。・配列から Conrtains などのインスタンス・メソッドが消えた。 主にそれらの機能は static なクラス・メソッドに移行しました。 い…
MS から 2005年1月版ドラフト1.9 が公開されているので、翻訳作業のベースを順次そちらに移行します。ちょこちょこと整理されているので、読み直しながら手を入れていくつもりです。
かなり手を抜いた作りですが、C++/CLI から Win32 API を呼びまくりで統合アーカイバのラッパ・クラスを作ってみました。http://www.stdblue.net/vene/programing/archives.html できることは、アーカイブ・ファイルを与えて、ファイル名を取得するだけです…
VirtualPC の XP 上に入れてざっとテストしてみました。 今回のリリースではマイルストーン4.2をほぼクリアして来た模様です。ざっと、Beta1との違いを羅列してみます。・stdcli::language 宣言が不要に Beta1 では array や safe_cast, pin_ptr などを使う…
デリゲートと列挙型の翻訳が終わりました。これでだいたい全体の半分ぐらいでしょうか。 さすがに量があるなぁ。 マネージド・オブジェクトとがですけど、委託オブジェクトと訳した方がわかりやすいかな。生存期間の管理をGCに委託していると言う意味で。 マ…
今頃になってようやく違いが分かる男になれました。 アセンブリ境界の問題ですね。 テンプレートはコンパイル時に型が確定するので、例えば、アセンブリを作った場合、そのアセンブリ中で使用されたテンプレート型以外が利用できないわけです。 例えば、アセ…
今週中ぐらいに、統合アーカイブを利用した C++/CLI のサンプルを上げようと思っています。なんか、C++/CLI から Win32 がシームレスに呼び出せないと誤解されている方がいるようなので、GetProcAddress や WideCharToMultiByte、GetDesktopWindow などを利…