Я делаю физический движок в C#/XNA, у меня есть три основные объекты ...Использование обобщенных функций для обнаружения столкновений в C#/XNA
Сфера Куб Plane
что все происходит от
GameObject
хранить все свои объекты в списке геймобжектов, и я хотел бы, чтобы перебрать этот список и быть в состоянии вызвать функцию CheckCollision, которая будет идти к правильной функции Fo г каждая пара объектов
например
идти является сферой,
go2 является сферой
if(CheckCollision(go, go2))
{
//do stuff
}
bool CheckCollision(Sphere one, Sphere two)
{
//Check Sphere to Sphere
}
bool CheckCollision(Sphere sphere, Plane plane)
{
//Check Sphere to Plane
}
, и я хотел бы, чтобы просто перейти к правильной функции Withour необходимости использовать если чеки.
спасибо.
Возможный дубликат [Оптимизация алгоритма уведомления об отправке в C#?] (Http://stackoverflow.com/questions/2367903/optimizing-multiple-dispatch-notification-algorithm-in-c) – phoog
@Ramhound, как был синтаксис инвалид? Я не включил весь файл в свой образец, потому что чувствовал, что все, что мне нужно, чтобы получить мою точку зрения, было то, что я хотел перегрузить функцию, где мои параметры должны определяться во время выполнения. phoog: Я не знал, чтобы найти виртуальную отправку для моей проблемы. Спасибо, что ответили, а не просто перенаправили мне ссылку. – chrispytoast
@chrispytoast - Забудьте об этом ... Не стоит мое время объяснять, что не так с вашим примером кода. –