gpt4 book ai didi

c# - 不能声明主体,因为它被标记为抽象

转载 作者:太空狗 更新时间:2023-10-30 00:17:58 24 4
gpt4 key购买 nike

您好,我是 C# 控制台应用程序的新手,我正在使用抽象和覆盖,但我在 public abstract double Compute() 的第一个方法中得到了堆栈,我得到了一个错误,它说 < strong>无法声明正文,因为它被标记为抽象请帮助我。谢谢你!

`

abstract class Cake
{
public string _flavor, _size;
public int _quantity;

public Cake(string flavor, string size, int quantity)
{
_flavor = flavor;
_size = size;
_quantity = quantity;
}

public abstract double Compute()
{
double price;
if(_flavor == "Chocolate" && _size == "Regular")
{
price = 250.50;
}
else if (_flavor == "Chocolate" && _size == "Large")
{
price = 450.50;
}
else if (_flavor == "Strawberry" && _size == "Regular")
{
price = 300.50;
}
else
{
price = 500.75;
}
return price;
}
}

class BirthdayCake:Cake
{
public int _numOfCandles;

public BirthdayCake(string flavor, string size, int quantity, int numOfCandles):base(flavor,size,quantity)
{
_numOfCandles = numOfCandles;
}

public override double Compute()
{
return _numOfCandles * 10.00;
}
}`

最佳答案

当您有默认实现但希望允许子类时,请使用virtual 而不是abstract覆盖

关于c# - 不能声明主体,因为它被标记为抽象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47352307/

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