![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() День добрый!
![]() Столкнулся с такой проблемой, а куда ткнуться в поисках решения - даже не знаю. Определяю я процедуру и функцию с одним и тем же названием и с одними и теми же параметрами.. Код:
... [11] function Mult_Real(const A: TMatrix; Alpha: real):TMatrix; overload; [12] procedure Mult_Real(var A: TMatrix; Alpha: real); overload; ... Код:
[DCC Error] Matrix_.pas (12): E2037 Declaration of 'Mult_Real' differs from previous declaration для чего разделяю процедуру и функцию: обрабатывается массив, если надо будет вернуть результат в другую матрицу, то придется пользоваться функцией, если же надо изменить саму исходную матрицу, то гораздо удобнее воспользоваться var'ом /*мои рассуждения*/ как обойти ошибку? |
#2
|
||||
|
||||
![]() Цитата:
Код:
function Mult_Real(const A: TMatrix; Alpha: real):TMatrix; overload; procedure Mult_Real(InA: TMatrix; var OutA: TMatrix; Alpha: real); overload; Код:
function Mult_Real(const A: TMatrix; Alpha: real):TMatrix; overload; procedure Mult_Real(var A: TMatrix; Alpha: real; Dummy:byte); overload; Еще можно обойтись одной функцией, добавив необязательный параметр, определяющий, изменять ли исходную матрицу: Код:
function Mult_Real(var A: TMatrix; Alpha: real; ChangeSrc:boolean=false):TMatrix; РГРТУ - ФВТ - Системы Автоматизированного ПРоектирования. ت |