Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.16;
Скачать: CL | DM;

Вниз

Опять   Найти похожие ветки 

 
Bakch ©   (2002-11-28 09:01) [0]

Доброе утро всем!
Определено множество имен таблиц:
type
TNameTable = (Table1, Table2.....TableN);
TNameTableSet = set of TNameTable;
var
List_of_Name:TNameTableSet;
Делаю проверку
if not (MTable.TableName in List_of_Name) then
Получаю "Incompatible types WideStrings and TNameTable".
Как же покончить с этим инкомпетибл.


 
Sima   (2002-11-28 09:35) [1]

Ну дак а ты что хотел?
Тип TNameTableSet - это Byte (т.к. set), а TableName - это строка
ну и как приказываешь делфи это сравнивать?

А типа использовать массив строк, в которых имена хранятся не пробовал? можно объявить константу и в ней искать


 
xenon ©   (2002-11-28 09:38) [2]

type
TNameTable = (Table1, Table2.....TableN);
TNameTableSet = set of TNameTable;
Это не множество имен таблиц, а множество целочисленных констант.
(хотя это не совсем так)
Выход - создай массив из названий таблиц. И в цикле с ним сравнивай. Или используй TStringList.


 
Victor_Cr ©   (2002-11-28 10:59) [3]

Перечисляемый тип для объектов (например TTable), это очень странная структура. Несовместимость очевидна множество состоящее из таблиц (т.е. объектов) не может сравниваться с строковыми переменными. Убери .TableName и получишь синтаксически правильную структуру.
Но я не могу понять зачем тебе это нужно. Для этого есть и другие методы, например присваивай своим таблицам уникальные идентификаторы, а их уже загоняй в множество (Инкремируешь свойство Tag у таблиц).


 
Victor_Cr ©   (2002-11-28 11:06) [4]

Черт, я голодный и тупой от этого. Извени первый абзац отпадает.



Страницы: 1 вся ветка

Текущий архив: 2002.12.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-51663
Bizon
2002-12-05 15:46
2002.12.16
Навеяло вопросом про вирус.


1-51798
George3
2002-12-05 10:43
2002.12.16
Координаты Mouse компонента в координаты Screen


6-51863
Romych
2002-10-21 09:18
2002.12.16
Почему, такая разница в быстродействии?


14-51888
Ajax
2002-11-21 16:50
2002.12.16
Программа для компьютерного клуба.


14-51912
Separator
2002-11-12 12:02
2002.12.16
Графический редартор