Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.141.8.247] |
|
Сообщ.
#1
,
|
|
|
Вечер добрый. Пишу простенький класс для выполнения различных матричных операций. Для меня это в новинку так что пишу о своей проблеме.
При Create моего объекта немогу обратиться к мои переменным что бы занести в них нужные данные и вижу Inaccessible value. Type TDynamicsArray = class //Класс динамическая матрица private Name : String; //Имя массива Matrix : array of array of real; //Массив procedure SetMatrixLength(Value1,Value2 : byte); procedure GetMatrixRandom(Dispersion : integer); public constructor Create(Name : string; Value1,Value2 : byte); end; constructor TDynamicsArray.Create(Name: string; Value1,Value2 : byte); begin inherited Create; end; Обращаю внимание что не види как Matrix так и Name. Буду очень рад совету |
Сообщ.
#2
,
|
|
|
А причем тут "разработка компонентов"? у тебя с классом проблема.
1) а зачем ты передаешь значения в конструктор и не используешь их. (также ты зря в конструкторе параметр обозвал также как и поле в классе. теперь что бы разруливать проблему с одинаковыми именами придется ссылаться через self.) 2) не видны где? внутри самого класса они будут видны. но в другом месте нет, ибо они приватные. |
Сообщ.
#3
,
|
|
|
TheRedSun Про Name не знаю, но массив у тебя точно динамический. Стало быть его нужно создать сначала, а потом уже туда что-то запихивать. Возможно что со строкой тоже самое.
|
Сообщ.
#4
,
|
|
|
Так в Create я и обьявить обьявить Name и динамический массив пытался. Только просматривая переменный в начале Create даже Name дает Inaccessible value.
|
Сообщ.
#5
,
|
|
|
TheRedSun Приведи пример неработающего кода. С твоим русским очень трудно понять, что у тебя не работает. Как говорится "Лучше один раз увидеть".
|