Неправильная практика определения функций в файле, содержащих основную функцию, а не файлы заголовков и их соответствующий .cpp-файл? В настоящее время я объявляю свои прототипы функций в начале файла перед основной функцией, а затем определяю функции в конце после окончания моей основной функции. Будет ли работодатель считать это noobish?Является ли плохой практикой определять функции в main.cpp, а не в заголовочных файлах?
ответ
Это хорошая практика держать все как можно более местным. Если функции не доступны вне файла .cpp, не помещайте их в заголовочный файл (вы можете захотеть помещать локальные вспомогательные функции в анонимное пространство имен).
Все зависит от того, что вы делаете, например, если вы работаете над проектом, который будет использовать классы, вы можете переместить их в отдельный заголовочный файл и/.cpp, особенно если вы планируете о повторном использовании функций и классов, которые вы сделали.
Если проект невелик, вам действительно не нужно беспокоиться об этом, и оно не является ни правильным, ни неправильным в этот момент (и в целом), вы должны стараться быть максимально эффективными, и каждая ситуация отличается от вас нужно смотреть на каждый, когда вы приходите к нему :)
- 1. Является ли плохой практикой определять параметры класса через массив?
- 2. Является ли это плохой практикой?
- 3. Является ли CORS плохой практикой?
- 4. Является ли ActiveRecord плохой практикой?
- 5. Является ли typedef внутри тела функции плохой практикой программирования?
- 6. Инкапсуляция в заголовочных файлах
- 7. Является ли такой метод bool плохой практикой?
- 8. Является ли это плохой практикой базы данных?
- 9. Является ли дескриптор заголовка typedef плохой практикой?
- 10. Является ли циклическая ссылка плохой практикой?
- 11. Является ли плохой практикой использование созависимых классов?
- 12. Является ли это плохой практикой для droppable?
- 13. Является ли #include <../header.h> плохой практикой в C++?
- 14. Является ли [var = modify (var)] плохой практикой?
- 15. Является ли несколько HttpAsyncClient считаться плохой практикой?
- 16. Константные указатели в заголовочных файлах
- 17. Является ли это плохой практикой MVVM?
- 18. Как имитировать функции в заголовочных файлах?
- 19. Является ли использование Javascript внутри функции jQuery плохой практикой?
- 20. Является ли это плохой практикой кодирования?
- 21. Является ли хорошей практикой определять, какие данные загружать в контроллер?
- 22. Связаны ли функции jQuery с плохой практикой?
- 23. Swift: Являются ли глобальные функции плохой практикой?
- 24. Объявление переменных в заголовочных файлах C++
- 25. Является ли подкласс в Objective-C плохой практикой?
- 26. Является ли это плохой практикой для хранения паролей в PHP?
- 27. Исходный код в заголовочных файлах
- 28. Правильно ли определять классы в файлах заголовков?
- 29. Является ли плохой практикой идентификатор каждого (используемого) элемента в html?
- 30. Использование std в заголовочных файлах
До тех пор, пока main.cpp не вырастет 2000 + линий, это вполне нормально, для меня. – bipll
Это не плохая практика, но мне удобнее избегать форвардных деклараций, если это возможно, и просто «главная» - последняя функция. Но это всего лишь личный вкус. Это не «noobish», чтобы сделать это так или иначе. – Cornstalks
@bipll: Я бы сказал, что 2000 - это хорошо, хотя я был бы немного обеспокоен, когда он достигнет [300000] (http://stackoverflow.com/q/36413769). –