& ldquo; неопределенная ссылка на & rdquo; с полностью статическим классом [duplicate]

Одна из причин, по которой вам нужно реализовать интерфейс, а не расширять базовый класс, заключается в том, что вы уже расширяете какой-либо другой класс. Вы можете расширить только один класс, но вы можете реализовать любое количество интерфейсов.

Если вы расширяете Thread, вы в основном предотвращаете выполнение вашей логики любым другим потоком, чем «это». Если вы хотите, чтобы поток выполнял вашу логику, лучше всего реализовать Runnable.

41
задан Rakitić 9 August 2016 в 12:37
поделиться

3 ответа

Линкер не знает, куда выделить данные для _frequency, и вы должны указать его вручную. Вы можете достичь этого, просто добавив эту строку: LARGE_INTEGER WindowsTimer::_frequency = 0; в один из ваших источников на C ++.

Более подробное объяснение здесь

16
ответ дан Community 19 August 2018 в 02:41
поделиться

Вам нужно определить _frequency в файле .cpp.

i.e.

LARGE_INTEGER WindowsTimer::_frequency;
61
ответ дан Ed Heal 19 August 2018 в 02:41
поделиться

Если в классе есть статическая переменная, то вы должны определить ее в файле cpp, например

LARGE_INTEGER WindowsTimer::_frequency = 0;
15
ответ дан Raghuram 19 August 2018 в 02:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: