ユーザ定義型
ユーザー定義変換のチュートリアル
ユーザ定義型を作ってみた。キーワードは、struct・operator・implicit・explicitといったところだろうか。これはまだまだ理解できない部分があるし、面倒だ。自作したために保証できない面が大きいし、リスク高いなぁ、これ。
ユーザー定義変換のチュートリアル
ユーザ定義型を作ってみた。キーワードは、struct・operator・implicit・explicitといったところだろうか。これはまだまだ理解できない部分があるし、面倒だ。自作したために保証できない面が大きいし、リスク高いなぁ、これ。
public void Func() {
using (FileStream fs = new FileStream("test.txt", FileMode.Read)) {
using (StreamReader sr = new StreamReader(fs)) {
// 処理する
}
}
}
このコードは下記のコードとまったく同じ意味です。実際、これらのコードのILを見比べると100%まったく同じです。
ということなんですよ。興味深いなぁ。知らなかったなぁ、usingにこんな機能があるなんて。System.Windows.Forms.FormクラスももちろんIDisposableインターフェースが組み込まれているわけですが、例えば次のようなことをやると、即Dispose()メソッドが走ります。気をつけてね。(w
public void Func() {
FileStream fs = new FileStream("test.txt", FileMode.Read);
try {
StreamReader sr = new StreamReader(fs);
try {
// 処理する
}
finally {
if (sr != null) {
sr.Dispose();
}
}
}
finally {
if (fs != null) {
fs.Dispose();
}
}
}
public class Form1 : System.Windows.Forms.Form
{
}
public class Sample
{
using(Form1 form = new Form1())
{
form.Show();
}
// 上のブロックが終わるときにDispose()が走るので、
// 折角ShowしたFormが消えるのだ。(w
}
2004/12/05に、Microsoft Windows Server System : ポート番号一覧をExcel形式でダウンロードできます。今何故ポート番号を公開するのか?セキュリティ関連があるからこそでしょうね。80番と443番だけあけて、あとは閉じるのがベターかな。
この Excel のシートは、マイクロソフトの製品・サービスプログラムが利用しているネットワークのポート番号を参照することができます。Windows Server を採用したシステムにおける利用状況などを一覧で確認することができます。
cssで記述するときに、id属性に対しては#を使い、class属性に対しては.で表現する。
#container {
width:400px;
}
.links {
width: 200px;
}
<div id="container"></div>
<div class="links"></div>
apache forrest 0.6を試した。(apache-forrest-0.6.zip)
環境変数FORREST_HOMEとPATHを設定(FORREST_HOMEは、C:\Documents and Settingsのようなスペース入りの値は避けるべき)
カレントディレクトリをforrestのトップディレクトリ(c:\home\apache-forrest-0.6など)へ移動してからコマンドを実行することになる。
ためしに、コマンドプロンプトから"forrest -projecthelp"を実行
サーバを起動するときに、"forrest run"を実行
デフォルトではhttp://localhost:8888/でアクセスできる。
簡単っ!
仮想メソッドと非仮想メソッドの違いを次の例で示します。
using System;
class A
{
public void F() { Console.WriteLine("A.F"); }
public virtual void G() { Console.WriteLine("A.G"); }
}
class B: A
{
new public void F() { Console.WriteLine("B.F"); }
public override void G() { Console.WriteLine("B.G"); }
}
class Test
{
static void Main() {
B b = new B();
A a = b;
a.F();
b.F();
a.G();
b.G();
}
}
この例では、A は非仮想メソッド F および仮想メソッド G を導入します。クラス B は新規の非仮想メソッド F を導入します。これにより、継承された F は隠ぺいされ、かつ、継承されたメソッド G はオーバーライドされます。この例では、次のように出力されます。
A.F
B.F
B.G
B.G
Table 491 - LBA to MSF translation (CD)
condition Formulae -150 ≤ LBA ≤ 404849 M = IP( (LBA + 150) / (60 ⋅ 75) )
S = IP( (LBA + 150 - (M ⋅ 60 ⋅ 75) ) / 75 )
F = IP( LBA + 150 - (M ⋅ 60 ⋅ 75) - (S ⋅ 75) )-45150 ≤ LBA ≤ -151 M = IP( (LBA + 450150) / (60 ⋅ 75) )
S = IP( (LBA + 450150 - (M ⋅ 60 ⋅ 75) ) / 75 )
F = IP( LBA + 450150 - (M ⋅ 60 ⋅ 75) - (S ⋅ 75) )00/00/00 ≤ MSF ≤ 89/59/74 LBA = (M⋅ 60 + S) ⋅ 75 + F - 150 90/00/00 ≤ MSF ≤ 99/59/74 LBA = (M⋅ 60 + S) ⋅ 75 + F - 450150
最近のお気に入り。
ApacheBlogのサイトにいったら、Derbyってあるから訳もわからずにダウンロードしてみたけど、ググってみたら、何よ、Cloudscapeのことかね!?待ってたんだよなぁ。w
http://japan.linux.com/enterprise/04/09/02/0216213.shtml