gpt4 book ai didi

由于名称相同或语法错误而导致 C# 错误?

转载 作者:行者123 更新时间:2023-12-02 17:40:54 24 4
gpt4 key购买 nike

为了练习,我必须创建一个类似的库。项目规范表明应该有一个 Book 类和 Borrower 字段:

+---------------------------+            +--------------------------+
|Book | |Borrower |
+---------------------------+ +--------------------------+
|private string title | |private string name |
|private string author | |private Book b |
|private int ISBN |

以及这些方法:

|public Book(string,string,int)|         |public Borrower(String)  |
|public string GetAuthor() | |public string GetName() |
|public string GetTitle() | |public Book GetBook() |
|public int GetISBN() | |public void SetBook(Book)|
|// add methods, if needed | | |
+------------------------------+ +-------------------------+

所以我将其编码到我的编译器中,但在我的 Borrower 类中,我遇到了如下错误:

class Borrower
{
private string name;
private Book b;

public Borrower(string n)
{
name = n;
}

public string GetName()
{
return name;
}

public Book GetBook()
{
return b;
}

public void SetBook(Book) //I get an error here (Identifier expected)
{
Book = b; // error here says Book is type but is used as a variable
}
}

这是我的 Book 类,这里没有错误

class Book
{
private string title, author;
private int ISBN;

public Book(string a, string b, int c)
{
title = a;
author = b;
ISBN = c;
}

public string GetAuthor()
{
return author;
}

public string GetTitle()
{
return title;
}

public int GetISBN()
{
return ISBN;
}
}

我收到错误是因为我有一个与类名称相同的方法Book,还是我实际上可以将该类用作方法

最佳答案

这个方法

public void SetBook(Book)
{
Book = b;
}

应重写如下:

public void SetBook(Book b)
{
this.b = b;
}

否则,作为参数传递的对象将没有名称。我使用了与您的字段 Book b 相同的名称,因此我添加了 this.b 以消除歧义。

关于由于名称相同或语法错误而导致 C# 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43966962/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com