2009年07月02日

[C#]アクセス修飾子のオーバーライド

Javaではprivate>無印>protected>publicの方向にのみ
上書きできる。(ゆるくなる方向)

C#は出来ないが、newで流れを止めればできる。
C++はやりたい放題。

うん、(´・ω・`) 同僚に聞かれただけなんだ。
最近会話に代名詞が増えてきたからココにメモしておいてやるお。(^ω^)

さらにつっこむと継承してるのに流れを止めるってのはどうなのさ、
と思う。委譲にして分離度上げた方がいいんじゃね?

なんてな。


参考リンク
 http://ja.wikipedia.org/wiki/%E7%B6%99%E6%89%BF
 http://wisdom.sakura.ne.jp/programming/cs/cs27.html
 仮想関数のアクセス指定子
  http://d.hatena.ne.jp/eagle_raptor/20090502/1241219906
 http://msdn.microsoft.com/ja-jp/library/ebca9ah3.aspx
 http://msdn.microsoft.com/ja-jp/library/435f1dw2.aspx
posted by koteitan at 16:38| Comment(0) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする

2009年06月23日

ファイルコピー

同僚がファイルのコピーについて、

同「File.AppendTextで3行で書けたぜ」
同「TextReader.ReadToEnd Method一気に読み込んでケツに追記したぜ」


      ィ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;゙t,
     彡;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ヽ
     イ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;r''ソ~ヾ:;;;;;;゙i,
     t;;;;;;;リ~`゙ヾ、;;;;;;;;;;;;;;;;;;;;ノ    i,;;;;;;!
     ゙i,;;;;t    ヾ-‐''"~´_,,.ィ"゙  ヾ;;f^!   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ト.;;;;;》  =ニー-彡ニ''"~´,,...,,.  レ')l. < おまえは何を言っているんだ
     t゙ヾ;l   __,, .. ,,_   ,.テ:ro=r''"゙ !.f'l.   \____________
      ヽ.ヽ ー=rtσフ= ;  ('"^'=''′  リノ  
    ,,.. -‐ゝ.>、 `゙゙゙゙´ ,'  ヽ   . : :! /
 ~´ : : : : : `ヽ:.    ,rf :. . :.: j 、 . : : ト、.、
 : : : : : : : : : : ヽ、  /. .゙ー:、_,.r'゙: :ヽ. : :/ ヽ\、 
  :f: r: : : : : : : : !丶  r-、=一=''チ^  ,/   !:: : :`丶、_
  : /: : : : : : : : :! ヽ、  ゙ ''' ''¨´  /   ,i: : : l!: : : : :`ヽ、
 〃: :j: : : : : : : ゙i   `ヽ、..,,__,, :ィ"::   ,ノ:: : : : : : : : : : : :\
 ノ: : : : : : : : : : :丶   : : ::::::::: : : :   /: : : : : : : : : : : : : : : :\

俺「ファイルが1GBだったらどうするんだ?」
俺「ファイルがバイナリだったらどうするんだ?」
と、煽ると

同「じゃあ、どう書くんだよ、3行で書けよ」

とか言う。(^ω^#ピキピキ




3年ぶりぐらいに書いた
posted by koteitan at 18:10| Comment(0) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする

2008年10月20日

2007年06月13日

[C#]型変換時の動作定義

うーむ。
これ、javaにも( ゚д゚)ホスィ…

暗黙の型変換動作定義
http://msdn2.microsoft.com/ja-jp/library/z5z9kes2(VS.80).aspx

明示的型変換動作定義
http://msdn2.microsoft.com/ja-jp/library/xhbhezf4(VS.80).aspx

C++にもあるよね、たしか。
これを使うと、無理矢理switch文とかにつかえたりする。
乱発は(・Α・)イクナイ

まぁ、試しに


public static implicit operator int(Hoge m)
{
  return 0;
}

とか定義して、switchの引数にしてみ。暗黙型変換でintへキャストされ
0が返って処理される。
別に、getInt()とか定義したり、Enumでやったりとまぁそれでいいんだが。

posted by koteitan at 16:58| Comment(0) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする

2006年06月16日

ASP.NET

最近、同僚が仕事でASPをやっているらしい。
ASPといっても(ApplicationServiceProvider)の事ではなく、
Microsoft.NETのアレである。

昔のASPはちょろっとだけさわったことあるが、新しい方は
さっぱりなので、少しだけさわってみた…


(゚Д゚ )アラヤダ!!

Jsp+StrutsでEclipsよか、軽いわIDEは使いやすいわ、C#で書けるわ
開発環境(WebMatrix)も無料だわ、と。

ミミ彡  ゚̄ ̄' 〈 ゚̄ ̄ .|ミミ彡  正直、感動した

しかしなぁ、「仕事で」となるとUnixでないと嫌がるお偉いサンとか
ろくに勉強もしてないのにWindowsは(・Α・)イクナイとか言う人々が
決定、決済権をもつので大規模システムではどうかなぁ…。


以下、個人的感想、私見。
posted by koteitan at 15:41| Comment(0) | TrackBack(1) | C# | このブログの読者になる | 更新情報をチェックする

2006年01月05日

数値変換を判断してみる

普通というか、C#の入門書等では、文字データから数値データ(Int32やUint32など)への
変換処理は下記のように紹介されていることだと思う。


string str = "12345";
int istr = 0;
try{
  istr = int.Parse(str);
}catch(FormatException e){
  Console.WriteLine("数値に変換できません");
}


しかし、この方法は、高コストだ。javaでもそうだが、tryブロックは処理が遅い。
数値に変換できる前提の処理で変換できない場合がエラーになるようなケースならば
上記のコードがもっともスマートではあるが。

これ以外の方法はないのか?続きを読む
posted by koteitan at 11:49| Comment(1) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする

2005年12月08日

備忘録 -数値から文字への書式付き変換-

数値データをゼロサプレス付きしたいときぐらいにしか、利用価値が無いかもしれません。

int i = 12345;
string str = i.ToString("d10");
Console.WriteLine("i = {0}",i);
Console.WriteLine("str = {0}",str);

実行してみましょう


d10は数値10桁でと言う意味になります。なにかデジャヴのようなものを
感じます。そんなあなたはC言語技術者。そう、printfの書式とほぼ同じなのです。



posted by koteitan at 17:05| Comment(0) | TrackBack(0) | C# | このブログの読者になる | 更新情報をチェックする