タグ

プログラミングに関するsheephumanのブックマーク (8)

  • RichTextBox の特定文字列の色を変更する - Visual C# プログラミング

  • 関数

    概要 同じプログラムコードを複数の場所で何度も利用したい場合があります。 例えば、今まで説明してきた中で、たびたび「入力を促すメッセージを出力して、整数を入力してもらう」という場面が出てきました。 そのために何度も同じようなソースコードを書いてきました。 「反復処理」のところでも説明しましたが、 同じコードを複数の箇所に書くのはプログラムを管理していく上で好ましくありません。 そこで、こういう頻繁に使われる機能をまとめて、何度も呼び出せるようにしたのが関数(function)です。 (追記したい) 何度も出てくる処理でなくても、 処理に名前が付く単位で関数化すべき。 明確な名前を付ける(名前が付く単位で区切る)のがよいコードを書くコツ。 ポイント 何度も出てくる処理は関数化する。 数学の「関数」から取った名前。プログラミング用語的には、他に、サブルーチン、プロシージャ(手続き)、メソッド等

    関数
    sheephuman
    sheephuman 2016/09/30
    public class Program にしないと'ConsoleApp' does not contain a static 'Main' method suitable for an entry point  と出る。
  • ありがちなC言語プログラムの間違い

    ここでは、C言語によるプログラミングでありがちな間違いを紹介します。 C言語によるプログラミングで犯しやすい間違いは、 C言語 FAQ 日語訳 や C言語のよくある間違い に数多くの例が紹介されていますので、一度、目を通してみることをお勧めします。 ここでは、これらのページに見当たらなかった間違いの例を紹介します。 なお、C言語だけでなく、基的にC++言語でも同じことが言えます。

    sheephuman
    sheephuman 2016/09/30
    switch文で書いておけば、もしも値が重複してしまった時には、コンパイルエラーとなって、気づくことができます。
  • 適当えんじにあ( ´д`)

  • [雑記] 多重継承できない理由

    「継承」で説明した通り、C#ではクラスの多重継承を認めていません。すなわち、どんな型も基底クラスは1つだけです。制限なしの多重継承は実装のコストが結構高く、メリットに対してコストが見合わないというのが一般的な見方です。ここでは、その多重継承にかかるコストについて説明していきます。 オブジェクトのメモリ レイアウト 単一継承時のメモリ レイアウト 多重継承を認めた場合のメモリ レイアウト ダイヤモンド問題 実際にほしかったものはインターフェイス オブジェクトのメモリ レイアウト 多重継承を認めた場合に問題となるのは、オブジェクトのメモリ レイアウトです。そこでまず、このメモリ レイアウトについて軽く説明しておきます。 実行時型情報で少し触れていますが、クラスや構造体などの複合型は、実行時にはメモリ上でどうレイアウトされるかが決まっています。 例えば、以下のようなクラスがあったとします。 cl

    [雑記] 多重継承できない理由
  • [雑記] 識別子のスコープとオブジェクトの寿命

    項では、識別子のスコープ(有効な範囲、異なるものに同じ名前を付けれない範囲)とオブジェクトの寿命(作ったオブジェクトがいつまで生きているか、ガベージ コレクションの対象外になっているか)について説明していきます。 ※ 項では、現時点までに説明していない概念がいくつか出てきます。現時点で説明済みのものは変数くらいなので、とりあえず変数が絡むところだけ読んで、残りは後々読み直してください。 概要 識別子のスコープ 入れ子のブロック 例外1: メンバーとローカル変数 例外2: 型と名前空間 引数 ループ変数 変数を使える範囲 オブジェクトの寿命 ラムダ式と変数の昇格 forステートメントのループ変数 foreachステートメントのループ変数 イテレーターと非同期メソッド C# 7での新しいスコープ ルール 式中での変数宣言 ラムダ式 余談: is 演算子で新しい変数を導入 ローカル関数を使え

    [雑記] 識別子のスコープとオブジェクトの寿命
  • x86系CPUのネイティブコードを解析する

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    x86系CPUのネイティブコードを解析する
  • Windows実行ファイルのバイナリ概要

    EXEファイルには具体的に、どのような情報が格納されているのでしょうか。通常、Visual C++やVisual Basic、Delphiなどのコンパイラが自動的に生成してくれるので、考えることはありませんが、今回はこの疑問に真っ向から勝負を挑んでいきます。 EXEは魔法の箱? 筆者は「ActiveBasic」というネイティブコンパイラ搭載型の統合開発環境を開発しています。コンパイラ開発イコール、EXEファイルの仕様をかなり細かい部分まで理解しなければならないという状況に置かれることを意味します。 Javaや.NETが騒がれる昨今、あえてEXEファイルというディープな内容に迫っていこうということで稿へ筆を入れ始めたわけですが、やはり、この手の話題はプログラマ魂がうずきます。このように感じる技術者の方は多いはず。しかしその反面、世の中にはアセンブラを書けないプログラマが数多く存在すると聞き

    Windows実行ファイルのバイナリ概要
  • 1