Ich habe einige sehr ineffiziente Code, in denen viele Zeilen erscheinen 4 mal, wie ich durch Permutationen mit "<" und ">" Operationen und eine Vielzahl von Variablen und Konstanten. Es scheint, dass es einen Weg gibt, die Funktion einmal zu schreiben und die Operatoren zusammen mit den notwendigerweise sich ändernden Werten und "ref" Variablen zu übergeben. Welche Technik muss ich lernen? "Delegierte" wurden vorgeschlagen, aber ich sehe nicht, wie man sie auf diese Weise benutzt. Dies ist in C# 2.0, VS2005, aber wenn die Technik generisch ist und auch mit C++ verwendet werden kann, wäre das großartig.Übergeben eines Operators mit anderen Parametern
Antrag auf einige Codes: Es erscheint in vielen Formen, mit verschiedenen "<" und ">" Zeichen sowie eine Mischung aus "+" und "-" Zeichen:
if (move[check].Ypos - move[check].height/200.0D < LayoutManager.VISIO_HEIGHT - lcac_c.top)
{
move[check].Ypos = move[check].Ypos + adjust;
.
.
.
Würden Sie in der Lage sein, einen Code zu schreiben? –
Könnte jemand diesen Code formatieren? Könnten Sie uns auch etwas mehr Code geben? Im Moment ist es schwer zu sehen, was alles variieren wird - Wird es immer gegen 'move [check]' sein, und woher kommt 'adjust'? Ihre aktuelle Vermutung zu einer Methodensignatur kann helfen. –
Danke an Rob für die Sichtbarkeit meines Codes! "adjust" ist eine Klassenvariable und ich ändere es abhängig von der Bildschirmauflösung und dem Computer, auf dem ich das Programm vorführe. move ist ein Array von Instanzen einer Klasse In 2 der 4 Varianten des Codes würde ich uns Xpos, nicht YPos. Auch 2 der 4 haben <, 2 have >. Alles mit> würde ein + vor der adjust-Variable verwenden und umgekehrt. Außerdem verwendet man lcac_c.top, man benutzt lcac_c.right, etc. Ich möchte, dass alle diese übergeben werden. – user32848