Declaration of delegate type in Question 1:
Suppose a class consists of the following method:
private void ShowValue(int i)
{
MessageBox.Show(i.ToString());
}
Explanation:
In the above given statement,
- The return type is void.
- The method consists of one parameter, an integer.
If this method has to be assigned to a delegate, then a delegate must be used to call the method. Initially, a delegate type must be declared as follows:
//Declare delegate type
delegate void DisplayInteger(int i);
- The above statement declares a delegate type named DisplayInteger, that can reference any void method, which has one parameter, an integer.
- This declaration starts with the delegate keyword, followed by code, which is same as that of a method header, terminated with a semicolon.
Creation of an instance in Question 2:
In the above given case, the delegate type is declared, now an actual delegate has to be created.
The statement to create an instance of the delegate type is as follows:
DisplayInteger ShowIntValue = ShowValue;
The above given statement creates a delegate named ShowIntValue, and the ShowValue method is assigned to the delegate. A delegate can reference any method as long as it has a return type and parameter list matching that of the delegate type.
Want to see the full answer?
Check out a sample textbook solutionChapter 13 Solutions
Pearson eText for Starting out with Visual C# -- Instant Access (Pearson+)
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education