It's annoying to not be able to declare the rows and cols pins or the keys as const without having a compile time warning.
Please change the constructor prototype to document the fact that you are not messing around with the arrays and thus they can be const.
please go for:
Keypad::Keypad(const char *userKeymap, const byte *row, const byte *col, byte numRows, byte numCols)