Use The Following Specification To Code A Complete C Module Named Pickingorder: Essay Help Site:edu

Use the following specification to code a complete C module named PickingOrder: enum class BagSize { FiveLB, TenLB, FifteenLB, TwentyLB }; This module represent a guest that comes to an orchard to pick apples directly from trees. Basic Details Your PickingOrder class includes at least the following data members: the address of a C-style null-terminated string of client-specified length that holds the guest name (composition relationship). Valid Name: any string that starts with an upper-case letter. the size of the bag using one of the enumeration constants defined above, defaulting to FiveLB. Public Member Functions Default constructor A custom constructor that receives as parameters: the size of the bag (optional); the address of a C-style null-terminated string containing the guest name. If the parameters are valid, this constructor stores them in the current object’s instance variables. If the client has omitted the bag-size input argument, this constructor assumes that the treatment type is FifteenLB. A function named getPrice. If the current object is not in an empty state, this function calculates the price for the order according to the following rules: FiveLB costs 15$, TenLB costs 25$, FifteenLB costs 35$, TwentyLB costs 45$ and returns it to the client. Note: there is an 8$ admission fee going to be added to each order. For example, if the bag-size is FiveLB, then the price is 23$. If the current object is in an empty state, this function should generate an exception with the message “Invalid instance!”. A class function named totalNoOfOrders returns the number of PickingOrder objects that currently exist in the program and have not yet been destroyed. Other Features Include in your design all special member functions required to manage your objects. You are allowed to add as many private members as you see fit. Your design should not generate any memory leaks, should meet the C 17 standard and should apply best practices. Put your answers for the header and implementation files in the answer box.