Question: I need to create an inherritance of an Event as a SwimmingEvent however I'm receiving an error that the constructor doens't contain 0 arguments, the problem is I don't know which arguments are meant to be passed through. Any help would be greatly appreciated. 

```
//Base Class
class Event
 {
    private string m_evName;
    private string m_evDate;
    private string m_evTime;
    private string m_evFee;
    private string m_evVenue;

    private List<Athlete> m_athletes;

    public String EvName { get { return m_evName; } }
    public String EvDate { get { return m_evDate; } }
    public String EvTime { get { return m_evTime; } }
    public String EvFee { get { return m_evFee; } }
    public String Venue { get { return m_evVenue; } }

    //Getters/Setters - Making private variables avilable in public space through class method
    public Event(String EvName, String EvDate, String EvTime, String EvFee, String EvVenue)
    {
        m_evName = EvName;
        m_evDate = EvDate;
        m_evTime = EvTime;
        m_evFee = EvFee;
        m_evVenue = EvVenue;

        m_athletes = new List<Athlete>();
    }
 } 

   //child class
  class SwimmingEvent : Event
   {
    private String m_distance;
    private String m_inOutVar;

    public SwimmingEvent(String Distance, String InOrOut)
    {
        m_distance = Distance;
        m_inOutVar = InOrOut;
    }

}

```

Answer: 
```
using System;
public class MyBase
{
   int num;

   public MyBase(int i )
   {
      num = i;
      Console.WriteLine("in MyBase(int i)");
   }

   public int GetNum()
   {
      return num;
   }
}

public class MyDerived: MyBase
{

    // This constructor will call MyBase.MyBase(int i)
    ***//You are missing this.***
   public MyDerived(int i) : base(i)
   {
   }

}

```
in C#, before constructor of derived class (such as SwimmingEvent constructor) is called, constructor of base class (Event class) must be called too. Arguments of call to base class's constructor are usually specified using "*base*" keyword like this:

```
class SwimmingEvent : Event
{
    ....
    public SwimmingEvent(String Distance, String InOrOut)
        :base(/*Arguments for base class constructor*/)
    {
        //Constructor of derived class
    }
}

```

if you omit ":base(...)", compiler assumes calling parameterless constructor of base class, such as if you write ":base()". But there is no parameterless constructor in base class, so you get the error.

You must either create parameterless constructor in Event class, or add "base" keyword and specify arguments for calling existing Event class's constructor in SwimmingEvent's declaration.