here is full code from algorithm and data structure in java written in c++
#include <iostream>
using namespace std;
class link {
public:
    int idata;
    double ddata;
    link *next;
    link ( int id,double dd){
        idata=id;
        ddata=dd;
    }
public :
    void display(){
        cout<<idata<<"=>";
        cout<<ddata;
    }
}; 
class  linked_list{
public :
    link *first;
public:
     linked_list(){
         first=NULL;
     }
      ~linked_list(){
          while (first!=NULL){
              link *ptr=first->next;
              delete first;
              first=ptr;
          }
      }
public:
    bool isempthy(){
        return (first==NULL);
    }
    void insert(int  id,double dd){
link *newlink= new link(id,dd);
newlink->next=first;
 first=newlink;
}
public:
    link deletefirst(){
        link *temp=first;
        first=first->next;
        return *temp;
    }
    void displaylist(){
        cout<<"List (first-->last";
        link *current=first;
        while (current!=NULL){
            current->next;
            current.display();
        }
    }
}
int main(){
    linked_list ll;
    ll.insert(22,12);
    ll.insert(44,35);
    ll.insert(12,46);
    ll.insert(100,23.45);
    while (!ll.isempthy()){
        link alink=ll.deletefirst();
        alink.display();
    }
     return 0;
}
error is that this fragment
current.display();  does not work  please help
std::list? That way, when you come to your senses, it'll be relatively easy to change to another data structure.