У меня есть простой класс для хранения данных датчиков, которые могут быть суммированыC++ статической переменной классы без CPP файла
class Data
{
public:
Data(){timestamp = Time::now(); id = sNextID++; data = 0; type = DATA_TYPE_UNKNOWN;}
double data;
Time timestamp;
DataType type;
private:
static unsigned int sNextID;
};
У меня есть заголовочный файл, объявляющей куча подобных классов данных. Учитывая простоту классов, нет необходимости в файле cpp реализации.
Проблема в том, что без файла реализации, как инициализировать sNextID? Я где-то читал, что по умолчанию он равен 0, что было бы хорошо, хотя полагаться на это кажется немного хакерским. Что еще более важно, однако, не инициализируя его где-то, компоновщик жалуется на неопределенную ссылку.
О, мне нравится шаблон. Я еще не стал использовать шаблоны, но я все равно буду двигаться в этом направлении. благодаря – ryan0270