То, что вы публикуете, не имеет смысла. Первый пример должен компилироваться без проблем, так как функции имеют разные имена , Funct1 и Funct2 .
Проблемы возникают только тогда, когда методы (или функции) имеют одинаковое имя . Тогда, как правило, директива overload
будет в порядке, но overload
не сможет различить функции только по возвращаемому значению .
Таким образом, предполагая, что имена совпадают, то, что вы хотите, невозможно. Нет никакой возможности перегрузить эти функции, если они не имеют другой сигнатуры параметра. Вы можете просто дать им разные имена , что в любом случае предпочтительнее, поскольку они, очевидно, делают разные вещи.
FWIW, ваш вопрос имеет недостатки из-за того, что вы, очевидно, не опубликовали точный код, с которым у вас действительно возникли проблемы. Пожалуйста, всегда публикуйте точный код, который вызывает ваши проблемы, и, если есть сообщения об ошибках, всегда публикуйте точное сообщение об ошибке (их обычно можно скопировать с помощью обычных нажатий клавиш, например, Ctrl + C, даже в большинстве частей IDE или в диалоги сообщений в Delphi). Если в сообщении об ошибке есть номера строк, укажите это в исходном коде, который вы публикуете, поскольку у нас не всегда такие же номера строк, как у вас.