Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Массив, индекс как уникальный ID - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Настройка Clion + OpenCV http://www.cyberforum.ru/cpp-beginners/thread1492181.html
Уважаемые, форумчане...беда!) Установил свеженькую среду Clione под виндой и теперь никак не могу разобраться как грамотно подключить OpenCV. Скачал exe установщик. Он все распаковал и...
C++ Важность очередности при подключении библиотеки GL/glut.h Всем привет. Пытаюсь вывести в заголовок угол поворота фигуры а он выдает вот такую ошибку: 1>------ Построение начато: проект: рисуем, Конфигурация: Debug Win32 ------ 1> рисунок.cpp... http://www.cyberforum.ru/cpp-beginners/thread1492166.html
Передача функции из одного класса в функцию другого C++
Здравствуйте уважаемые форумчане. Возникла некоторая проблема. Долго пытался выкрутиться сам, но в итоге решил обратиться к профессионалам. Ситуация следующая. Имется класс, в котором...
Ошибка 2 error LNK2019, не пойму в чем ошибка C++
Выдает такую ошибку: Ошибка 2 error LNK2019: ссылка на неразрешенный внешний символ "int __cdecl game(void)" (?game@@YAHXZ) в функции. Исходник прилагается. Спасибо за внимание.#include <stdio.h>...
C++ Определить разность между суммой элементов c четными индексами и суммой элементов, индексы которых кратны трем http://www.cyberforum.ru/cpp-beginners/thread1492115.html
Дан массив вещественных чисел Z (16). Определить разность между суммой элементов c четными индексами и суммой элементов, индексы которых кратны трем
C++ Как найти точки пересечения двух синусоид? Есть две синусоиды вида: y = a + b*sin(c*x + d) a,b,c,d - постоянные. x - в заданном интервале, допустим от -10 до +10. Нужно найти все точки пересечения. Подскажите, как их найти? (решите за... подробнее

Показать сообщение отдельно
Valeryn
41 / 25 / 5
Регистрация: 17.05.2015
Сообщений: 163
06.07.2015, 08:46  [ТС]
Цитата Сообщение от hoggy Посмотреть сообщение
все классы наследуются от AutoID,
Мне кажется что это не не гибко и не удобно.

У себя я пока что так сделал:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "entity.h"
 
entity::entity(class object_list &objlist) {
 
    srand(time(NULL)*(rand() % 10));
    ID = rand() % 1000;
 
    for (int i = 0; i < objlist.return_size(); i++) {
        if (objlist.return_ID(i) == ID) {
            srand(time(NULL)*(rand() % 10));
            ID = rand() % 1000;
            i--;
        }   
    }
    list_ = &objlist;
    list_->push(ID, title, x, y);
}
 
 
entity::~entity() {
    list_->trash(ID);
}
Оказывается использоваться srand(time(NULL)) не самая лучшая затея. Из за него у меня в цикле "if (objlist.return_ID(i) == ID)" срабатывала раз сто.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru