Code:
#include <iostream>

using namespace std;

int validity(string ,string );

class item
{
public:
    
    string name;
    int cost;
    int sku;
    
    void displayDetails();
    
};

int ch;                              
string id;
string pass;
int matchedAccount;


void item::displayDetails()
{
    cout<<name<<endl;
    cout<<"cost:"<<cost<<endl;
    cout<<"sku:"<<sku<<endl;
}


class customerDetails
{
public: 
        
    item itemDetailsObject[50];
    int itemDetailsCount;
    

    string customerName;
    string userID;
    string password;
    void viewCart();
    
}customerDetailsObject[2];                             
             
void input()
{
    cout<<"\nLogin ID :"<<endl;
    cin>>id;
    
    cout<<"\nLogin Password :"<<endl;
    cin>>pass;

}
int validity(string id,string pass)
{   
    int correctMatch;
    
    for (int i=0; i<=1; i++)     
    {
        if (id==customerDetailsObject[i].userID && pass==customerDetailsObject[i].password)
        {
            correctMatch=i;
            return correctMatch;
        }
        else
        {
            correctMatch=-1;                                        
        }
    }
    return correctMatch;
}


void login()
{
    input();
                                                                    
    matchedAccount=validity(id, pass);                        
    if (matchedAccount == -1) 
    {
        login();
    }
}


class category
{
public:

    item music[50];
    item electronic[50];
    
    int musicCount;
    int electronicsCount;
    
    void chooseCategory();
    void chooseMusicItem();
    void chooseElectronicItem();
    void displayMusicItemDetails();
    void displayElectronicItemDetails();
    
}categoryDetailsObject;                                                               

void musicAddToCart()
{
        int newPosition = customerDetailsObject[matchedAccount].itemDetailsCount;
    
        customerDetailsObject[matchedAccount].itemDetailsObject[newPosition]=categoryDetailsObject.music[ch-1];           
        customerDetailsObject[matchedAccount].itemDetailsCount++;
        
        cout<<"Item Details Count incrementer\n"<<customerDetailsObject[matchedAccount].itemDetailsCount<<endl;
}

void electronicAddToCart()
{
    int newPosition = customerDetailsObject[matchedAccount].itemDetailsCount;
    
    customerDetailsObject[matchedAccount].itemDetailsObject[newPosition]=categoryDetailsObject.electronic[ch-1];           
    customerDetailsObject[matchedAccount].itemDetailsCount++;
    
    cout<<"Item Details Count incrementer\n"<<customerDetailsObject[matchedAccount].itemDetailsCount<<endl;
}

void customerDetails::viewCart()
{
    for (int i=0; i<itemDetailsCount; i++)
    {
        cout<<"\nName - "<<customerDetailsObject[0].itemDetailsObject[i].name<<endl;
        cout<<"Rs - "<<customerDetailsObject[0].itemDetailsObject[i].cost<<endl;
        cout<<"Sku No - "<<customerDetailsObject[0].itemDetailsObject[i].sku<<endl;
    }
    
    
    int totalCost = 0;
    for (int i = 0; i < itemDetailsCount; i++)
    {
        totalCost += itemDetailsObject[i].cost;
    }
    cout<<"\nTotal Cost "<<totalCost<<endl;
    
    
    int selection;
    
    cout<<"\n1.Checkout"<<endl;
    
    cin>>selection;
    switch (selection) 
    {
        case 1:
            for (int i=0; i<itemDetailsCount; i++)
            {
                itemDetailsObject[i].name=" ";
                itemDetailsObject[i].sku=0;
                itemDetailsObject[i].cost=0;
                itemDetailsCount=0;
            }
            categoryDetailsObject.chooseCategory();
            break;
       
            
        default:viewCart();
            break;
    }  
}



void category::chooseCategory()
{
    int select;
    
    cout<<"\nWelcome"<<" "<<customerDetailsObject[matchedAccount].customerName<<endl;

    cout<<"\nChoose a category\n"<<endl;
    
    cout<<"1.Music"<<endl;
    cout<<"2.Electronic"<<endl;
    cout<<"3.Viewcart"<<endl;
    cout<<"4.Logout\n"<<endl;
    
    cout<<"Enter the choice"<<endl;
    
    cin>>select;
    
    switch (select) 
    {
        case 1:
            cout<<"Music"<<endl;
            this->chooseMusicItem();
            break;
            
        case 2:
            cout<<"Electronic"<<endl;
            this->chooseElectronicItem();
            break;
            
        case 3:
            cout<<"View Cart"<<endl;
            customerDetailsObject->viewCart();
            
        case 4:
            input();
            break;
            
        default:
            chooseCategory();
            break;
    }
}


void category::chooseMusicItem()
{
    cout<<"Music Items Details\n"<<endl;
    
    for (int i=0; i<musicCount; i++)
    { 
        cout<<i+1<<"."<<music[i].name<<"  Rs."<<music[i].cost<<endl;
    }
    cout<<musicCount+1<<"."<<"Back"<<endl;
        
    
    cout<<"\nEnter Choice"<<endl;
    cin>>ch;
    
    if (ch<1)
    {
        chooseMusicItem();
    }
    else if (ch<=musicCount)
    {
        displayMusicItemDetails();
    }
    else if (ch==musicCount+1)
    {
        chooseCategory();        
    }
    else 
    {
        chooseMusicItem();
    }
}


void category::displayMusicItemDetails()
{
    
    music[ch-1].displayDetails();
    
    int options;
    cout<<"\n1.Add to Cart"<<endl;
    cout<<"\n2.Back"<<endl;
    cout<<"\n3.MainPage"<<endl;
    
    cout<<"\nEnter Choice"<<endl;
    cin>>options;
    
    switch (options) 
    {
        case 1:
            musicAddToCart();
            this->displayMusicItemDetails();
            break;
            
        case 2:
            this->chooseMusicItem();
            break;
            
        case 3:
            this->chooseCategory();
            break;
            
        default:displayMusicItemDetails();
            break;
    }
}


void category::chooseElectronicItem()
{
    
    cout<<"\nElectronic Items Details\n"<<endl;
    
    for (int i=0; i<electronicsCount; i++)
    {
        cout<<i+1<<"."<<electronic[i].name<<"  Rs."<<electronic[i].cost<<endl;
    }
    
    cout<<electronicsCount+1<<"."<<"Back"<<endl;
    
    cout<<"\nEnter Choice"<<endl;
    cin>>ch;
    
    if (ch<1)
    {
        chooseElectronicItem();
    }
    else if (ch<=electronicsCount)
    {
        displayElectronicItemDetails();
    }
    else if(ch==electronicsCount+1)
    {
        chooseCategory();
    }
    else
    {
        chooseElectronicItem();
    }
}


void category::displayElectronicItemDetails()
{
    
    electronic[ch-1].displayDetails();
    
    int options;
    cout<<"\n1.Add to Cart"<<endl;
    cout<<"\n2.Back"<<endl;
    cout<<"\n3.MainPage"<<endl;
    
    cout<<"\nEnter Choice"<<endl;
    cin>>options;
    
    switch (options) 
    {
        case 1:
            electronicAddToCart();
            this->displayElectronicItemDetails();
            break;
            
        case 2:
            this->chooseElectronicItem();
            break;
            
        case 3:
            this->chooseCategory();
            break;
            
        default:
            displayElectronicItemDetails();
            break;
    }
}

int main (int argc, const char * argv[])
{

    customerDetailsObject[0].customerName="David";
    customerDetailsObject[0].userID="dav2";
    customerDetailsObject[0].password="abc12";
    customerDetailsObject[0].itemDetailsCount=0;
    
    customerDetailsObject[1].customerName="Rahul";
    customerDetailsObject[1].userID="rah45";
    customerDetailsObject[1].password="1awe";
    customerDetailsObject[1].itemDetailsCount=0;
    

    categoryDetailsObject.musicCount = 3;
    categoryDetailsObject.electronicsCount = 4;
    
    
    categoryDetailsObject.music[0].name="The Dark Knight OST";
    categoryDetailsObject.music[0].cost=200;
    categoryDetailsObject.music[0].sku=10246;
    
   
  
/// Like this i have declared for electronics items as well // 
    
    login();
    
    categoryDetailsObject.chooseCategory();


this is my code i when i execute the program and select the items for customer david the total items selected in add to cart menu and total costs will be calculates ,, but when i select the customer rahul the total items and costs would appear as 0

i could declare the number of users similarly like i have declared number of music items (categoryDetailsObject.musicCount = 3) i have declared musicCount in category class

i have used the musicCount variable in for loop in chooseMusicItemDetails .

similarly i can use customerCount variable in input function but i dont know how to do it .

how to do it for customerDetailsObject since it has 2 objects
i cant do it like customerDetailsObject[0].customerCount = 2 ;