2004-08-01から1ヶ月間の記事一覧

8/31

・GhostDoc コメント自動作成ツール。VS.NETでも自動的にコメントを入れてくれますが、それと何が違うかというと、 class Movie { /// <summary> /// Gets the charge. /// </summary> /// <param name="days">Days.</param> /// <returns></returns> public int getCharge(int days) { return 0; } /// <summary> /// Gets the frequent</summary>…

6ヶ月突破

気づけば日記を始めて半年。今までの最高記録が半年なので、これからは未知の領域です。(^^;

C#でsscanfもどき

たまに、クラスライブラリ一覧を見ながら知らないクラスをチェックしてたりするのですが、今回目にとまったのはArgIterator。調べてみたら確かにこれはあんま使わなさそう。取りあえずサンプルとして、Cライブラリのsscanfもどきをこさえてみました。手抜き…

8/29

・Microsoft Announces 2006 Target Date for Broad Availability Of Windows "Longhorn" Client Operating System Longhornから新しいファイルシステムであるWinFSが取り除かれるようです。かなり野心的なファイルシステムなんで色々難しいんでしょうね。ま…

友人の退院

今週、友人が突然入院した。病名は「くも膜下出血」。話を聞いた瞬間全く理解できなかった。理解できた後でも、全然実感が湧かないというか、信じられないというか。ここ数日、ずっと心配していたのですが、幸運にも命に別状もなく、後遺症も無いとのことで…

SMTP認証

SMTPでメールを送信するにはSmtpMailクラスを使えば良いのですが、SMTP認証が必要な場合、どうすれば良いでしょうか? ざっとヘルプを見た限りではSmtpMailクラスでは対応してなさそうです。ところが、実装方法が分からないSmtpMailで対応することが出来るの…

ゲームは1日1時間

が、限界かも。2ヶ月ぶりくらいに3時間ほどゲームをしてたら、あっという間に0時。ここから日記書いて、英語の勉強して・・・なんて時間捻出できません。(^^;時間が足りないと言えば、大学の友人が時々、マンガやら小説を送ってきてくれるのですが、ここん…

Process.Exitedイベントの謎

ってほどのことは無いのですが、ちょっと嵌りました。例えば、電卓を起動させて、一定時間経ったら強制終了させるコードがあったとします。 using System; using System.Diagnostics; class Program { static void Exited(object Sender, EventArgs e) { Con…

8/24

・PostgreSQL 8.0 to support Windows natively Windows上ではcygwinを使わないと動かせないというのが嫌でノータッチ。その後、cygwin無しでも動くようになったみたいでしたが、フリーのデータベースに興味が無くなった後でした。ところで、記事では8.0でサ…

Struct vs Class

C#がJavaと違うところの1つにstruct(値型)をサポートが上げられます。勿論、Javaでもbyteやintなどのプリミティブなものは値型ですが、ユーザ定義の値型はありません。さて、structを使うとパフォーマンスが良いとか、サイズが大きくなったら遅くなるとか言…

更にvectorとiteratorも

vectorとiteratorもほんの一部だけ実装してみました。ただ、iteratorとかはポインタが無いと辛い気がします。 #region Using directives using System; using System.Collections.Generic; using STL.Generic; using IntVector = STL.Generic.Vector<int>; using </int>…

STLモドキのサンプル

日記に貼り付けるにはでかすぎるのでここに置いておきます。VC#2005Expressβ1が必要です。(追記) Vectorの仕様を勘違いしていたので修正。AlgorithmにForEach,Fill,Generateを追加。その他、ちまちま。さて、本題を忘れて色々遊んでましたが、やっぱSTL風の…

STLもどき

昨日の続きで実装を進めてみました。まずは、IArithmeticインタフェースですが、一応最終形id:ladybugさんのコメントを見て気が変わりました。(^^; public interface IArithmetic<T> where T : IComparable, IFormattable, IConvertible, IComparable<T> { T Add(T</t></t>…

力業Tuple

BoostのTupleを真似てみました。 #region Using directives using System; using System.Collections.Generic; using STL.Generic; using Result = STL.Generic.Tuple<int, int, int, double>; #endregion class Program { // 型なしタプル static Tuple Calc4_1(int x, int y) { re</int,>…

C#でSTL(無駄な足掻きとも言う)

C#にもSTLやboostっぽいライブラリが欲しいという話題がありましたので、C#で実装するとどんな感じになるか、ちょっと実験。型パラメータに対する演算については私の日記よりも、ladybugさんの方がスマートなので参考にさせて貰いました。 #region Using dir…

8/20

・Interview with Steve McConnell コードコンプリートの作者さん。・Windows XP Professional x64 Edition Customer Preview Program Windows XP 64bitプレビュー版がダウンロード出来るようです。私もダウンロード中ですが問題は64bitマシンを持っていない…

8/19

・STL.NET Primer あ、Lippman先生だ。ひょっとして、C#でもSTLが使えるようになるのか!? とか、期待しましたが、まてまて、そんなこと出来ないだろうと、落ち着いて本文を読む。 we feel confident in our ability to interoperate with other .NET langu…

8/18

・Sorting Algorithms In C# (via Peli's Blog) C#で書いたソートアルゴリズム色々。・MSDN Magazine SEPTEMBER 2004 今回はSQL Server2005特集みたい。あと、いつの間にかCompiled HTML Help形式のファイルもダウンロード出来るようになってますね。

Buffer.BlockCopy使います?

ネットの会議室を見てたらbyte[ ]をushort[ ]へ変換する方法についてBinaryReaderを使う以外*1ないかという質問がありました。C/C++を知っている人だとunsafeを使ってbyte*からushort*へキャストしたりするかも知れません。もし、unsafeが使えないとしたら、…

8/17

・C5(via Monologue) ジェネリックコレクションライブラリ。知る限りではNCollection、PowerCollection、そしてC5で3つ目。

固定長テキストの処理方法(.NET2.0)

.NET2.0のBCLを覗いていたら、System.Text.Parsingなるものを発見。Parserが転がっているのかと期待しましたが、TextFieldParserがあるだけでした。このクラスは固定長及び可変長のテキストが扱えますが、可変長はString.Splitに比べて何が嬉しいのかよく分…

30000ビュー

気づけば30000ビュー達成。いつも見ていただきありがとうございます。一応、.NETサイトなつもりでやっているのですが、それっぽく出来ているのだろうか・・・(^^;なので、id:Yamamiさんに あ、.NETのid:akiramei さんだっ!! と、言って貰えたことが、密か…

8/16

・Programs that may behave differently in Windows XP Service Pack 2 XP SP2はまだ入れてないのですが、これを見たら入れる気が無くなりました。VS.NET2003に影響がある時点でアウトだよ・・・・MSDN Lab 何のページだろう・・・VS2005のオンラインドキュ…

Genericパラメータのバインド

Genericなクラスに対するリフレクションとか調べていて、ふと疑問が浮かびました。 Type t = typeof(List<int>); object o = Activator.CreateInstance(t); ActivatorでListをインスタンス化していますが、ジェネリックパラメータをint固定じゃなく、実行時に変え</int>…

英語の勉強その2

リスニングが全然駄目なので、ここ3週間くらい往復の通勤時間などを利用して日に1,2時間程度聴いていたら、多少はマシになってきた気が。ただ、このままずるずるやっていると惰性になってしまいそうなので、目標を用意した方が良さそう。やっぱTOEICあた…

遅いよコレクション

Genericsがサポートされる前は、動的配列を使おうとするとArrayListあたりを使うことになりました。しかし、ArrayListはObjectのコレクションのため、プリミティブ型を入れるとboxing/unboxingが発生し、パフォーマンスが良くありませんでした。.NET2.0ではG…

8/12

iNET - Write Once in .NET, Run Anywhere .NETアプリをJavaへ変換するツール。ITmediaの記事では「.NETクラスライブラリも変換する」と書いてあったので、「まさか、リバースエンジニアリングなのか!?」と、思わずメーカーのサイトをチェックしてしまいま…

初めてのMSBuild

マイクロソフトの新しいBuildエンジン。バージョンアップのたびにプロジェクトファイルを変更してくれていますが、今度こそは決定版となって貰いたいです。さて、MSBuildの記述方法ですが、今どきのツールっぽく、やっぱりXML形式です。NAntとか使っていると…

8/11

・Mono 1.0.1リリース ちょっと前にリリースされていましたが、Win32版が公開されたのでリンク。バグフィックスリリースですがAMD64もサポートされているみたいです。

速いよ.NET2.0

http://d.hatena.ne.jp/akiramei/20040517#p1で配列のパフォーマンスをテストしましたが、VS2005でもやってみました。実際のコードは過去の日記を見て貰うとして、いきなり結果です。 /* 結果 // .NET1.1 ArrayConst :00:00:13.4218750 FixedConst :00:00:09…