Здравствуйте, Bless, Вы писали:
MS>>Перегружать функции в C++ можно только по аргументам, но не по возвращаемым значениям.
MS>>Отсюда следует, что возвращаемое значение не участвует в формировании имени функции на этапе компиляции.
MS>>Поэтому никаких проблем с точки зрения линкера нет.
B>Дык, я не собирался ее перегружать! Просто хочу использовать функцию из одного .cpp в другом, для чего вынес ее объявление в .h . Я только начинающий в с++, но кажется в данном случае делал все правильно. И я очень удивлен, что компилятор не предупредил меня, что я опечатался и типы возвращаемых значений объявлений функции в head.h и head.cpp не совпадают!
B>Ведь строчка
B>B> x=f();
B>
B>в main.cpp — серьезная ошибка, учитывая, что f() — функция не возвращающая значения.
B>Имхо, компилятор не должнен пропускать подобных ляпов.
варнинги включи при компиляции
-Wall