What are you attempting to do on lines 27, 29, and 36?
If you're trying to call NonPerishable::sku or NonPerishable::price, your syntax doesn't make much sense. I'm not just being vague on purpose, I'm not sure what to say. You're trying to call a function sku, but the input to the function is the name of the same function.
Perhaps start by saying what you think lines 27, 29, and 36 are supposed to be doing?
Edit: perhaps you meant to do sku(oitem.perishableSku); ?
and price(oitem.originalPrice); ?
The input to your sku function should be a const char* (AKA a C string, or can be a raw char array), and the input to your price function should be a double.