I have a base class

```
public abstract class MyBaseClass()
{
    // ...
}

```

and I want to ensure that derived classes implement their own custom `GetHashCode` method. Is

```
public abstract class MyBaseClass()
{
    // ...

    public abstract override int GetHashCode();
}

```

the way to do it, or is the entire idea code smell?