Я хотел добавить к узлам в моей переменной списка, которая содержит время, прошедшее с начала программы. К несчастью, все они получили то же самое. Что не так в моем коде?Почему все элементы в моем списке имеют одинаковое время создания?
void MyList:: pushBack(val nval)
{
if (size == 0)
{
first->elem = nval;
first->time = ((clock()/(double)(CLOCKS_PER_SEC)) * 1000);
size++;
return;
}
Node *n = new Node();
n->time= ((clock()/(double)(CLOCKS_PER_SEC)) *1000);
n->elem = nval;
last->next = n;
last = n;
size++;
// delete n;
}
struct Node {
double time;
val elem;
Node *next=nullptr;
};
class MyList
{
int size = 0;
Node* first;
Node* last = first;
MyList();
void pushBack(val nval);
~MyList();
};
Возможно, что-то не так, что ваш компьютер exteremly fast ** или ---> ** вы просто просите кого-то отладить его для вас –
Пожалуйста, отредактируйте вопрос и добавьте код, который добавит элементы. – kebs
В зависимости от вашей платформы 'clock()' вероятно, возвращает время CPU, а не фактическое время. Кроме того, его разрешение довольно низкое. – interjay