Я работаю над заданием, и хотя у меня нет никаких проблем с фактическим назначением, я хочу сделать свой код «правильным». Я пытаюсь определить статическую переменную в моем заголовочном файле. Я хочу, чтобы он был статическим, чтобы все экземпляры этого класса могли обращаться к одной и той же переменной. Я тоже не хочу его нарушать, я хочу, чтобы у этого класса был доступ к нему. Затем я пытаюсь определить его в фактическом файле (а не в заголовке), но я все время получаю сообщение об ошибке в том, что вы не можете его отличить. Я просто хочу узнать, как правильно сделать это, чтобы иметь более чистый код.Создание статического поля в файле заголовка | C++
-1
A
ответ
1
Определение вашей области остается внутри класса:
class AddrSpace
{
List *availSpots;
};
Полное имя этой переменной будет AddrSpace::availSpots
. Для C++ требуется явно определять статические переменные (включая статические поля классов). Я бы не сказал, что это вполне логично, потому что у компилятора уже есть все, чтобы генерировать все необходимые материалы. Тем не менее это так. Определение в файле C++ должно выглядеть так:
List *AddrSpace::availSpots = new List();
В следующий раз, пожалуйста, добавьте источник непосредственно в вопрос.
Смежные вопросы
- 1. Создание прототипов C++ в отдельном файле заголовка
- 2. Создание статического заголовка таблицы с ScrollView
- 3. Шаблон C++ в файле заголовка
- 4. Печать второго поля в файле после заголовка.
- 5. Определение статического массива в исходном файле C или C++
- 6. Как инициализация статического поля работает в C#?
- 7. Запрет на использование полей заголовка поля заголовка заголовка поля заголовка заголовка поля заголовка поля заголовка заголовка поля заголовка заголовка поля заголовка.
- 8. Переопределение статического поля
- 9. WX_DECLARE_HASH_MAP в файле заголовка
- 10. struct в файле заголовка
- 11. Класс в файле заголовка
- 12. Функция в файле заголовка
- 13. C++ объявление класса в другом файле заголовка
- 14. Свойства Objective-C в файле заголовка - IOS
- 15. Функция, объявленная дважды в файле заголовка C
- 16. «частная» переменная в файле заголовка C
- 17. Проблема инициализации объекта в файле заголовка C++
- 18. C++ 14 Generic лямбды в файле заголовка
- 19. C++ :: GET и SET в файле заголовка
- 20. C++ объявить вектор в файле заголовка
- 21. о объявлении класса в файле заголовка C++
- 22. Найти все макроопределение в файле заголовка c
- 23. Объявление векторов в файле заголовка C++
- 24. Как определить переменные в файле заголовка, C
- 25. Как объявить C-массив в файле заголовка?
- 26. объявление const массива в файле заголовка C++
- 27. C++ вложенный класс в файле разделенных заголовка
- 28. заголовка путь к файлу в файле C
- 29. C++: Условные изменения в файле заголовка
- 30. Использование define в файле заголовка c
При задании вопроса о проблеме, вызванной вашим кодом, вы получите гораздо лучшие ответы, если вы предоставите [код, который люди могут использовать для воспроизведения проблемы] (http://stackoverflow.com/help/mcve). – CAB
И код должен быть в текстовом формате в вопросе не изображения. – drescherjm
В файле реализации (.cc) вам необходимо правильно объявить переменную, а не просто назначить ей. Например, 'List * AddrSpace :: availSlots = new List();' –