public void Print(PrintProcess p) { foreach (var item in listOfStudent) { p(item); // = (item) => { Console.WriteLine(item); }) } }
public void Print(PrintProcess process) { foreach (var item in listOfStudent) { process(item); } }
public void Print(PrintProcess process) // process : 콜백함수 { foreach (var item in listOfStudent) { process(item); // 콜백함수에 매개변수를 전달(연결)하여 호출 } }
public void Print(PrintProcess process) { foreach (var item in products) { process(item); } }
bool Print(PrintProcess process) //bool을 리턴하고 매개변수 없는 함수를 매개변수로 받아와서 동작 수행하는 함수 { if (process()) { MessageBox.Show("정답!"); return(true); } else { MessageBox.Show("오답!"); return(false); } }
public void Print(PrintProcess process) { foreach (var item in listOfStudent) { process(item); /* * * * process는 이 함수 통짜바리, item은 (student) 객체 * (student) => * { * Console.WriteLine(); * Console.WriteLine("이름: " + student.Name); * Console.WriteLine("학점: " + student.Score); * } */ } }
private void button_check_Click(object sender, EventArgs e) { bool valueresult = int.TryParse(textBox_input.Text, out choiceNumber); if (!valueresult) { MessageBox.Show("유효한 값이 아닙니다."); return; } //case 1 //Print( // () => // { // if (choiceNumber > number) // { // MessageBox.Show("선택한 숫자가 더 큽니다."); // return false; // } // else if (choiceNumber < number) // { // MessageBox.Show("선택한 숫자가 더 작습니다."); // return false; // } // else // { // number = new Random().Next(1, 11); // label_answer.Text = number.ToString(); // return true; // } // } //); //case 2 //PrintProcess example = delegate () //{ // if (choiceNumber > number) // { // MessageBox.Show("선택한 숫자가 더 큽니다."); // return false; // } // else if (choiceNumber < number) // { // MessageBox.Show("선택한 숫자가 더 작습니다."); // return false; // } // else // { // number = new Random().Next(1, 11); // label_answer.Text = number.ToString(); // return true; // } //}; //Print(example); //case 3 PrintProcess example2 = FindResult; Print(example2); }