Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.11.2009, 22:48
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию Особый тип переменных

Привет всем!

У меня задача. Нужно организовать такой тип данных, чтобы было в пределах 0..1 и при этом столько же знаков после запятой, сколько у single.
__________________
Делаем'c разные игры. Искать на glscene.ru
Ответить с цитированием
  #2  
Старый 22.11.2009, 23:40
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вариант - сделать свой класс, тогда ты можешь сделать кучу методов у него.
Ответить с цитированием
  #3  
Старый 22.11.2009, 23:52
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию

Цитата:
Сообщение от lmikle
Вариант - сделать свой класс, тогда ты можешь сделать кучу методов у него.
А подробнее?
__________________
Делаем'c разные игры. Искать на glscene.ru
Ответить с цитированием
  #4  
Старый 22.11.2009, 23:55
Kapitoshka438 Kapitoshka438 вне форума
Начинающий
 
Регистрация: 09.11.2009
Сообщения: 145
Репутация: 238
По умолчанию

А что мешает использовать Single?
Ответить с цитированием
  #5  
Старый 23.11.2009, 14:50
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию

Цитата:
Сообщение от Kapitoshka438
А что мешает использовать Single?
нужно, чтобы если число > 1 компилятор выдавал ошибку. Помогите пожалуйста.
__________________
Делаем'c разные игры. Искать на glscene.ru
Ответить с цитированием
  #6  
Старый 23.11.2009, 15:56
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Почему именно чтобы компилятор выводил ошибку??? Можешь и сам после проверки сгенерировать исключение...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #7  
Старый 23.11.2009, 15:59
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию

Цитата:
Сообщение от NIch
Почему именно чтобы компилятор выводил ошибку??? Можешь и сам после проверки сгенерировать исключение...
проект не должен вообще компилироваться если число >1! Это нужно чтобы исключить элементы шаманство из нашего игрового движка.
__________________
Делаем'c разные игры. Искать на glscene.ru

Последний раз редактировалось DungeonLords, 24.11.2009 в 08:33.
Ответить с цитированием
  #8  
Старый 23.11.2009, 16:33
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Цитата:
проект не должен вообще компилироваться если число >1
Если значение числа задается в коде, то это константа...если присваивается во время выполнения, то это переменная...
А как среда в дизайнтайме узнает значение переменной, чтобы не откомпилировать проект...
Ты же сам задаешь переменную в рантайм, вот и введи проверку на значение...
Или я что то не так понимаю...
З.Ы. Перерыл гугл и ничего подобного пока не нашел...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #9  
Старый 23.11.2009, 23:47
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию

Цитата:
Сообщение от NIch
А как среда в дизайнтайме узнает значение переменной, чтобы не откомпилировать проект...
Ты же сам задаешь переменную в рантайм, вот и введи проверку на значение...
Или я что то не так понимаю...
Ты что-то не так понимаешь. Во-первых, это переменная. Во-вторых значение переменной задаётся первый раз в designtime, а ещё может в runtime. Эта переменная - свойство т.е. описано как published.
Что-то типо такого (на самом деле это код с ошибками)
Код:
   TGLAlphaFunc = class
   private
    Fref:0..1;
   protected
    procedure Setref(ref:0:1);
   published
    property ref:Tref read Fref write Setref;
   end;

И вот нужно, чтобы когда я попытаюсь задать в disigntime значени >1, было бы примерно такое сообщение:
Цитата:
Сообщение от NIch
З.Ы. Перерыл гугл и ничего подобного пока не нашел...
Так задачу я сам себе придумал!
__________________
Делаем'c разные игры. Искать на glscene.ru

Последний раз редактировалось DungeonLords, 23.11.2009 в 23:50.
Ответить с цитированием
  #10  
Старый 24.11.2009, 00:30
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Дерзай, сдаюсь)))
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:53.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter