Сейчас попробовал, как вы говорите, убрать лишний конструктор из процедуры
procedure TForm1.Button1Click(Sender: TObject);
var x:tmyobject;
begin
//x.init;
x:=x+x;
form1.Caption:=x.get_string;
end;
а в оператор добавить конструктор -
operator +(c1,c2: ...
Найдено 20 результатов
- 06.01.2014 13:09:44
- Форум: Обучение Free Pascal
- Тема: Перегрузка операторов для обьектов с виртуальными методами
- Ответы: 3
- Просмотры: 9714
- 05.01.2014 15:21:39
- Форум: Обучение Free Pascal
- Тема: Перегрузка операторов для обьектов с виртуальными методами
- Ответы: 3
- Просмотры: 9714
Перегрузка операторов для обьектов с виртуальными методами
Здравствуйте.
Когда обьекту с перегрузкой операторов сделал метод виртуальным, то при его вызове возникает Access Violation.
Вот обьект -
type tmyobject=object
i:integer;
constructor init;
function get_string:string; virtual;
end;
operator +(c1,c2:tmyobject)r:tmyobject ...
Когда обьекту с перегрузкой операторов сделал метод виртуальным, то при его вызове возникает Access Violation.
Вот обьект -
type tmyobject=object
i:integer;
constructor init;
function get_string:string; virtual;
end;
operator +(c1,c2:tmyobject)r:tmyobject ...
- 07.02.2013 00:02:06
- Форум: Обучение Free Pascal
- Тема: Ошибки при использовании обьектов
- Ответы: 5
- Просмотры: 13233
Re: Ошибки при использовании обьектов
Lazarus к обеим этим проблемам отношения не имеет. Это компилятор и/или отладчик.
Проверяйте с FPC версии 2.7.1 и, если воспроизведётся, пишите в багтрекер FPC.
Спасибо. Попробую сделать всё это. Хотя если бы более опытный человек это сделал, то было бы намного быстрее, т.к. никогда ни с тем, ни ...
Проверяйте с FPC версии 2.7.1 и, если воспроизведётся, пишите в багтрекер FPC.
Спасибо. Попробую сделать всё это. Хотя если бы более опытный человек это сделал, то было бы намного быстрее, т.к. никогда ни с тем, ни ...
- 06.02.2013 03:10:33
- Форум: Обучение Free Pascal
- Тема: Ошибки при использовании обьектов
- Ответы: 5
- Просмотры: 13233
Ошибки при использовании обьектов
1. Наткнулся на такую ошибку при пошаговой отладке, если один обьект наследник другого. Вот пример -
tparent=object
end;
tchild=object(tparent)
i:integer;
constructor init;
end;
var Form1: TForm1;
implementation { TForm1 } {$R *.lfm}
procedure TForm1.Button1Click(Sender: ...
tparent=object
end;
tchild=object(tparent)
i:integer;
constructor init;
end;
var Form1: TForm1;
implementation { TForm1 } {$R *.lfm}
procedure TForm1.Button1Click(Sender: ...
- 24.02.2010 05:30:32
- Форум: Lazarus
- Тема: Опрос компонента по номеру или ???
- Ответы: 2
- Просмотры: 2162
Re: Опрос компонента по номеру или ???
var i,j:integer;
begin
for i:=0 to application.ComponentCount-1 do
for j:=0 to application.Components[i].ComponentCount-1 do
if pos('DB0',application.Components[i].Components[j].Name)>0 then
if tdbedit(application.Components[i ...
- 09.02.2010 12:38:43
- Форум: Lazarus
- Тема: Наследник tstringgrid - глюк?
- Ответы: 2
- Просмотры: 2532
Re: Наследник tstringgrid - глюк?
Climber
Спасибо, это все понятно, можно конечно каждый раз настраивать внешний вид в design-time, но нужно именно в виде компонента, т.к. он будет часто использоваться и плюс там еще у него будут разные другие функции.
Спасибо, это все понятно, можно конечно каждый раз настраивать внешний вид в design-time, но нужно именно в виде компонента, т.к. он будет часто использоваться и плюс там еще у него будут разные другие функции.
- 08.02.2010 20:33:37
- Форум: Lazarus
- Тема: Наследник tstringgrid - глюк?
- Ответы: 2
- Просмотры: 2532
Наследник tstringgrid - глюк?
Обнаружил такой глюк, или я что-то делаю не так?
Мне нужен компонент, наследник tstringgrid, чтобы при создании в нем были две колонки с заданными свойствами.
Для этого создаю пакет, как обычно, в нем компонент tmystringgrid, пишу в его конструкторе
constructor tmystringgrid.Create(TheOwner ...
Мне нужен компонент, наследник tstringgrid, чтобы при создании в нем были две колонки с заданными свойствами.
Для этого создаю пакет, как обычно, в нем компонент tmystringgrid, пишу в его конструкторе
constructor tmystringgrid.Create(TheOwner ...
- 20.01.2010 13:50:58
- Форум: Обучение Free Pascal
- Тема: процедурные переменные
- Ответы: 12
- Просмотры: 19150
процедурные переменные
У меня есть обьект, который работает с процедурной переменной.
Только иногда приходится работать не только с обычными функциями, а еще с функциями, которые являются методом какого-нибудь обьекта.
Но такая функция, хоть и имеет такой же список параметров, является другим типом процедурной ...
Только иногда приходится работать не только с обычными функциями, а еще с функциями, которые являются методом какого-нибудь обьекта.
Но такая функция, хоть и имеет такой же список параметров, является другим типом процедурной ...
- 24.03.2008 16:40:06
- Форум: Free Pascal Compiler
- Тема: наследование объектов с дин. массивом - как?
- Ответы: 37
- Просмотры: 29894
- 24.03.2008 13:07:29
- Форум: Free Pascal Compiler
- Тема: наследование объектов с дин. массивом - как?
- Ответы: 37
- Просмотры: 29894
- 24.03.2008 12:03:34
- Форум: Free Pascal Compiler
- Тема: наследование объектов с дин. массивом - как?
- Ответы: 37
- Просмотры: 29894
- 24.03.2008 05:13:24
- Форум: Free Pascal Compiler
- Тема: наследование объектов с дин. массивом - как?
- Ответы: 37
- Просмотры: 29894
наследование объектов с дин. массивом - как?
Столкнулся с тем, что если обьект является наследником другого обьекта с динамическим массивом, то из обьекта-наследника невозможно обратиться к этому массиву.
Вот код -
type a=object
x:array of integer;
end;
type b=object(a)
procedure ini;
end;
procedure b.ini;
begin ...
Вот код -
type a=object
x:array of integer;
end;
type b=object(a)
procedure ini;
end;
procedure b.ini;
begin ...
- 15.02.2008 15:49:51
- Форум: Lazarus
- Тема: глюки в лазарусе c сохранением юнитов
- Ответы: 3
- Просмотры: 4100
- 15.02.2008 03:00:19
- Форум: Lazarus
- Тема: глюки в лазарусе c сохранением юнитов
- Ответы: 3
- Просмотры: 4100
глюки в лазарусе c сохранением юнитов
У меня проект с одной формой и несколькими юнитами. В окне редактора исходного кода имя одного юнита на заголовке вкладки - mp2bd.pas - почему-то поменялось на unit1.lfm. Код в этой вкладке можно редактировать, но он не сохраняется, только обновляется дата создания файла unit1.lfm (хорошо хоть его ...
- 04.10.2007 18:20:17
- Форум: Free Pascal Compiler
- Тема: упреждающее объявление
- Ответы: 2
- Просмотры: 3704
