Моя целочисленная программа вставки в цепочку преобразовывает целые числа из 16: (2,4,6,8,10,12,14,875311656,942421548,741355820) - PullRequest
0 голосов
/ 01 февраля 2019

Вот мой метод вставки класса цепочки, который я реализую, тип данных целочисленный (typedef int TELEM). При отображении сохраненных чисел, из 16 показывает другие значения слишком большие

include

typedef int TELEM;

// liste d'éléments de type TELEM
class liste {
 public:
      liste::liste() : m_nb(0) ,m_tetefile(0)
{
  m_tetefile = new TELEM[m_nb+1] ;
}


liste::~liste()
{
  m_nb = 0;
  delete m_tetefile;
}

bool liste::est_vide() const
{
  return m_nb == 0;
}

int liste::taille() const
{
  return m_nb;
}

const TELEM& liste::operator[](int i) const
{
  assert((i>=1) && (i<=m_nb));

  return (m_tetefile[i]);
}

void liste::inserer(const TELEM& e, int i)
{  
  assert((i>=1) && (i<=m_nb+1));

  for (int k = m_nb ; k >= i ; --k)
    m_tetefile[k+1] = m_tetefile[k];      
  m_tetefile[i] = e;
  std::cout << e <<std::endl;
  std::cout << m_tetefile[i] <<std::endl;

  m_nb++;

}

private:    
  TELEM m_nb ;
  TELEM *m_tetefile;



};

std::ostream& operator<<(std::ostream& os, const liste& l)
{
  os << '(';
  if (!l.est_vide())
    os << l[1];
    for (int i=2; i<=l.taille(); ++i)
      os << ',' << l[i];  
  os << ')';
  return os;
}

из 16 ca дает мне это (2,4,6,8,10,12,14,875311656,942421548,741355820) вместо этого (2,4,6,8,10,12,14,16,18,20)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...