開発環境
- Microsoft Windows 7 Home Premium (OS)
- Microsoft Visual C# 2010 Express Edition (IDE)
- 言語: C#
独習C# 第3版 ハーバート・シルト (著) エディフィストラーニング株式会社 矢嶋聡 (監修, 翻訳) の第9章(Cインターフェイス、構造体、列挙型)の理解度チェック1、2、3、4、5、6を解いてみる。
7.
コード
using System; public interface IFailSoftArray { int Length { get; } int this[int index] { get; set; } } public class FailSoftArray : IFailSoftArray { int[] a; public bool ErrFlag; public FailSoftArray(int size) { a =new int[size]; Length = size; } #region IFailSoftArray public int Length { get; private set; } public int this[int index] { get { if (ok(index)) { ErrFlag = false; return a[index]; } else { ErrFlag = true; return 0; } } set { if (ok(index)) { a[index] = value; ErrFlag = false; } else ErrFlag = true; } } #endregion private bool ok(int index) { if (index > 0 && index < Length) { return true; } return false; } } class Tester { public void Run() { FailSoftArray fs = new FailSoftArray(5); int x; for (int i = 0; i < fs.Length; i++) { fs[i] = i * 10; } for (int i = 0; i < fs.Length; i++) { x = fs[i]; if (x != -1) { Console.Write("{0} ", x); } } Console.WriteLine(); } static void Main() { Tester t = new Tester(); t.Run(); } }
入出力結果(Console Window)
0 10 20 30 40 続行するには何かキーを押してください . . .
0 コメント:
コメントを投稿