#ifdefs в файлах.cpp и.h

Это нубский вопрос.

В основном у меня есть .h & .cpp файл мне нужно ввести условную компиляцию через #ifdef внутрь. Оба .h а также .cpp содержит 10 функций. Мне нужно сделать условную компиляцию только для 2 из них. Следовательно, я собирался обернуть 2 в .h файл в #ifdef"s

Вопрос 1: Нужно ли мне снова оборачивать реализацию функции в файлы C++? Я думаю, нет, правда? Я хочу быть уверен.

Вопрос 2: у меня есть массив указателей на функции из этих 10 функций. Должен ли я обернуть #ifdef внутри этого массива для 2 функций, а?

1 ответ

Решение

1: если они являются функцией класса, да. В противном случае вы могли бы быть в порядке, если вы не определите их, но я бы лично. Потому что если кто-то объявляет функцию как extern в другом модуле перевода, он просто получает доступ к функции.

2: я не сделал бы это, потому что это заставило бы всех клиентов обрабатывать 2 различного размера массива. Я бы только установил эти 2 указателя в NULL и обработал бы этот случай на стороне вызывающего.

Другие вопросы по тегам