繁体   English   中英

错误:C#中预期的类,委托,enm,接口或结构

[英]Error: Expected class, delegate, enm, interface, or struct in C#

该行中的错误:public virtual void BuyFavoriteStuff()

错误:预期的类,委托,enm,接口或结构

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace LearnAbstractClass
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }

    class Shopper 
    {
        private int TotalSpent=0, CreditLimit=10;
        public void ShopTillYouDrop()
        {
            while (TotalSpent < CreditLimit)
            BuyFavoriteStuff();
        }
    }
    public virtual void BuyFavoriteStuff() 
    {
        // No implementation here - we don’t know
        // what our student likes to buy!
    }

    class ArtStudent : Shopper 
    {
        public override void BuyFavoriteStuff() 
        {
            BuyArtSupplies();
            BuyBlackTurtlenecks();
            BuyDepressingMusic();
        }
        private void BuyBlackTurtlenecks()
        {}
        private void BuyDepressingMusic()
        {}
        private void BuyArtSupplies()
        {}
    }

    class EngineeringStudent : Shopper 
    {
        public override void BuyFavoriteStuff() 
        {
            BuyPencils();
            BuyGraphingCalculator();
            BuyPocketProtector();
        }
        private void BuyPencils()
        {}
        private void BuyGraphingCalculator()
        {}
        private void BuyPocketProtector()
        {}
    }
}

上面的实现有什么问题?

您的方法:

public virtual void BuyFavoriteStuff() 
    {
        // No implementation here - we don’t know
        // what our student likes to buy!
    }

在购物者类之外

您有任何类之外的方法:

public virtual void BuyFavoriteStuff() 
{
     // No implementation here - we don’t know
     // what our student likes to buy!
}

只需将其移至Shopper类即可。

BuyFavoriteStuff方法不在类内部

  public virtual void BuyFavoriteStuff() 
   {
    // No implementation here - we don’t know
    // what our student likes to buy!
  } 

您应该在类中声明您的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM