Показать сообщение отдельно
Старый 07.12.2011, 16:48   #6
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вызов функций

func.cpp
#include <cassert>

double func1(double val)
{
	return val+1;
}

double func1(int val)
{
	assert(0);

	return val+1;
}
main.cpp
#include <iostream>

#define USE_INT_FUNCTION

double func1(int);

#ifdef USE_INT_FUNCTION
double func2(double val)
{
	return func1(val-1);
}
#endif

double func1(double);

#ifndef USE_INT_FUNCTION
double func2(double val)
{
	return func1(val-1);
}
#endif

int main()
{
	std::cout<<func2(0.5)<<std::endl;

	std::cin.get();
}
вот еще один пример - в зависимости от того, закоментирован дефайн или нет, оно или падает или нет.
(Offline)
 
Ответить с цитированием