Прежде всего, я занимаюсь исследованиями, но из-за того, что я не мог усвоить это на уроке, другие ответы мне не пригодились. Теперь мой учитель просит из этого кода, что мой счетчик должен быть инициализирован статическим членом. И когда я создаю другой объект в классе, он должен быть посчитан на 1000, 1001, 1002. Кроме того, первый созданный мной объект должен иметь случайное число, которое не должно быть глобальным, после того, как это случайное число будет считаться 1 на 1.
И я должен использовать указатель для всего этого. Вы знаете, это действительно сложно для меня, но это то, что он хочет, как он сказал.
Вот мой код, который не работает.
#ifndef POINT_H
#define POINT_H
#include <cstdlib>
#include <ctime>
class Point
{
private:
int x;
int y;
static int count;
public:
Point(int, int);
void objectCount()
{
srand((unsigned)time(0));
Point::count = rand();
Point::
count++;
}
void print();
};
#endif
и мой .cpp
#include "Point.h"
#include <iostream>
using namespace std;
Point::Point(int x, int y):x(x), y(y){}
void Point::print()
{
cout << "(" << x << "," << y << ")" << " " << count << endl;
}