Я реализую базовый класс подсчета ссылок и хотел бы установить число uniqe для каждого создаваемого объекта, который наследует этот интерфейс.Выбор случайного числа для ID объекта?
вот фрагмент кода из этого класса:
HEADER:
class Object
{
const long long int object_id;
public:
Object();
virtual ~Object();
};
CPP:
Object::Object() : object_id(reinterpret_cast<long long int>(&object_id))
{
}
Я corious, если это безопасный подход или нет, если нет, то почему ? я не использовал ранды и srand функцию из-за 2 причин:
- srand AFAIK лучше всего использовать только один раз в проекте, чтобы сделать случайные числа как можно больше случайных.
- Этот подход более точен, поскольку два объекта не могут использовать одинаковое расположение памяти.
, пожалуйста, советую мне.
EDIT: С какой целью участник object_id создан? внутри конструктора или снаружи (до списка инициализатов или после) hm hm? спасибо большое!
Как насчет использования старого старого GUID? –
Можете ли вы использовать указатель экземпляра объекта как идентификатор? Трудно ответить на этот вопрос, потому что он точно зависит от того, для чего нужен идентификатор; какое поведение следует соблюдать в отношении копирования, сериализации, времени жизни и т. д. – tenfour
спасибо, как использовать GUID в C++? – codekiddy