Note the use of static on listAllCustomers, since it doesn't refer to a specific customer. I also introducted a List() function which is responsible for listing a single Customer instance.
Edit:
BTW, I don't recommend using a vector of pointers. You have a memory leak because you don't clean up the allocated instances before you exit.
A more elegant approach would be to create a Customers class which could inherit from the vector, keep track of the customer id, and be responsible for printing all customers.
You also have an issue with how you're handling customerId. If you delete CustomerId 5 in the vector, the remaining entries in the vector move down to occupy the space taken by the deleted entry. CusomterId 6 is now in slot 5 in the vector, etc.
Unless you are planning on using polymorphism in the customers, don't store pointers. std::vector<Customer> customerList;
If you do plan to support polymorphism, use an adequate smart pointer.
Also, a customer shouldn't be responsible to handle a list of customers.