Мне нужно получить три объекта из функции, мой инстинкт - создать новый тип, чтобы вернуть три ссылки. Или, если ссылки были того же типа, я мог бы использовать массив. Однако передать по ссылке проще:
private void Mutate_AddNode_GetGenes(ref NeuronGene newNeuronGene, ref ConnectionGene newConnectionGene1, ref ConnectionGene newConnectionGene2)
{
}
Очевидно, в этом нет ничего плохого, но я не решаюсь использовать этот подход, в основном, по соображениям эстетики и психологических отклонений. Есть ли на самом деле веские причины использовать один из этих подходов над другими? Возможно, проблема с производительностью при создании дополнительных объектов-оберток или переносе параметров в стек. Обратите внимание, что в моем конкретном случае это код, интенсивно использующий процессор. Циклы процессора имеют значение.
Есть ли более элегантный подход C # 2 в C # 3?
Спасибо.