Хорошо, поэтому у меня есть известная структура, а это значит, что у меня уже есть члены внутри этой структуры ... Однако у меня есть другие структуры, которые я хочу использовать в 1 вызове функции.Использование T как общего типа для известной структуры?
Это объявление функции в некотором классе:
public void OpenFile<T, F, U>(ref T body, ref F recordMap, ref U records);
И это вызов для функции в какой-либо другой класс:
OpenFile<SomeStructure1, SomeStructure2, SomeStructure3>(ref someStructureBodyDefinition, ref someStructureRecordMapDefinition, ref someStructureRecordsDefinition);
Таким образом, чтобы сбросить все это вниз:
Могу ли я использовать любую структуру для вызова функции в родовом типе, и если да, можете ли вы показать мне, как использовать члены структуры внутри функции?
Ваш последний вопрос: «Можете ли вы показать мне, как использовать члены структуры внутри функции», по которой, я думаю, вы имеете в виду, что хотите сделать что-то подобное внутри тела вашего метода OpenFile: 'var x = someStructureBodyDefinition.someMember', то есть вы хотите взаимодействовать с членом структуры. Однако вы не сможете это сделать, если не знаете заранее, что T имеет член с именем 'someMember'. Способ, которым вы можете это знать, заключается в том, что T либо реализует известный интерфейс, либо имеет наследование T от известного базового класса. – DWright