Delphi извежда грешка в този момент:
Оператор не е приложима за този вид операнд
Това е нормално, а аз съм само на генеричните лекарства грешни използва или в код, който не е толкова написани?
Накратко за проблема: Трябва да се създаде функция за работа с различни видове цели числа, които ще работят, в зависимост от размера на специално променливата, подадена от програмист. Планиран нещо като това:
Ако това е погрешно използването на генерични лекарства. Ще се радвам да се знае какво точно грешката.
Това е нормално, а аз съм само на генеричните лекарства грешни използва или в код, който не е толкова написани?
По дефиниция мод оператор изпълнява число разделяне с възстановяване. Както операнди за този оператор е разрешено да използва само цели числа (Byte. Word. Кардинал. Integer. Int64. UInt64.), Както и всички други видове са забранени, това, което и компилаторът казва.
Под предния капак, в целочислено деление Разделение използва инструкции за монтаж (за неподписани видове) и idiv (за подписани видове). Но за разлика от разделителни номера с различна дълбочина малко това е само тази, в която операнди и регистри ще доведат (остатък), които са поставени в регистрите. Повече информация за регистрите може да се прочете тук.
В платформата за 32-битова, за разделяне на 64-битово цяло число вграден се използват __llmod процедури. __llumod. тъй като в този случай, тези номера се съхраняват директно в регистрите 2 и не може да елегантен разделяй с една единствена команда.
Трябва да се създаде функция за работа с различни видове цели числа, които ще работят, в зависимост от размера на определена променлива
Ако наистина искате да използвате генеричните лекарства, можете да използвате като този:
Само не забравяйте да се изброят всички видове, с които възнамеряват да работят.
Свързани статии