建立如下功能的类。类名为“Book”
(1)该类用来抽象图书的名称、作者和出版社信息。
建立如下功能的类。类名为“BookRecords”。
(1)该类用来储存上面建立的 “Book”类对象,最大储存个数
为100。
(2)在该类中建立“Book”对象的储存和读取功能。
另外建立一个类用来测试和显示图书信息。提示:灵活运用数组和索引机制
关于索引的问题,各位高手有什么好的解决方法,麻烦列出代码,谢谢!!!
(1)该类用来抽象图书的名称、作者和出版社信息。
建立如下功能的类。类名为“BookRecords”。
(1)该类用来储存上面建立的 “Book”类对象,最大储存个数
为100。
(2)在该类中建立“Book”对象的储存和读取功能。
另外建立一个类用来测试和显示图书信息。提示:灵活运用数组和索引机制
关于索引的问题,各位高手有什么好的解决方法,麻烦列出代码,谢谢!!!
private string[] books;
public string this[int index]
{
get
{
return books[index];
}
}
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class MyRunning
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
//
BookRecords obj = new BookRecords();
for(int i = 0;i<100;i++)
{
obj[i].Name="第"+i+"本书";
obj[i].Author="作者是"+i;
obj[i].Press="出版社是:"+i;
}
for(int i =0;i<100;i++)
{
Console.WriteLine("书名是:"+obj[i].Name);
Console.WriteLine("作者是:"+obj[i].Author);
Console.WriteLine("出版社是:"+obj[i].Press);
}
}
}
class Book
{
private string pName;
private string pAuthor;
private string pPress;
public string Name
{
set
{
pName=value;
}
get
{
return pName;
}
}
public string Author
{
set
{
pAuthor=value;
}
get
{
return pAuthor;
}
}
public string Press
{
set
{
pPress=value;
}
get
{
return pPress;
}
}
} class BookRecords
{
public Book[] books;
public BookRecords()
{
books = new Book[100];
}
public Book this[int x]
{
set
{
books[x] = value;
}
get
{
return books[x];
}
}
}
}我是这样实现的,但是老报错,出错信息如下:
“DefaultDomain”: 已加载“c:\windows\microsoft.net\framework\v1.1.4322\mscorlib.dll”,未加载符号。
“E05”: 已加载“C:\Documents and Settings\xgn\My Documents\Visual Studio Projects\E05\bin\Debug\E05.exe”,符号已加载。
“E05.exe”: 已加载“c:\windows\assembly\gac\mscorlib.resources\1.0.5000.0_zh-chs_b77a5c561934e089\mscorlib.resources.dll”,未加载符号。
未处理的“System.NullReferenceException”类型的异常出现在 E05.exe 中。其他信息: 未将对象引用设置到对象的实例。程序“[1516] E05.exe”已退出,返回值为 0 (0x0)。高手能不能解释一下这是什么原因,谢谢!!
{
books = new Book[100];
for(int i=0;i<100;i++)
books[i]=new Book(); }
应该没有问题。
{
obj[i]=new Book();//// 应该加这么一句
obj[i].Name = "第" + i + "本书";
obj[i].Author = "作者是" + i;
obj[i].Press = "出版社是:" + i;
}
for(int i = 0;i<100;i++)
{
Book b=New Book;
b.Name="第"+i+"本书";
b.Author="作者是"+i;
b.Press="出版社是:"+i;obj[i]=b;
}