猫でC++でも勉強しようとしてたところオーバーライドのところで
class Moto{
public:
virtual int kaso();};

class Saki : public Moto{
public:
int kaso();};

int Moto::kaso(void){
cout << "継承元です" << endl;
return 0;}

int Saki::kaso(void){
cout << "オーバーライドしました" << endl;
return 0;}
とあったところ、virtual int kaso()をint kaso()に変えてみると
コンパイル時にエラーがでるか、オーバーライドされないと思ってたのですが
普通にオーバーライドされてました。オーバーライドはvirtualつけなくても出来るのでしょうか?