C++ போலவே சிஷார்ப்பிலும் ஆப்சனல் பராமீட்டர் மெதடுகளுக்கு
பயன்படுத்தலாம். அதாவது மெத்தடை பைன் செய்யும் பொழுது டிஃபால்ட் மதிப்பை கொடுக்க வேண்டும்.
அந்த மெத்தட் அழைக்கப்படும் பொழுது அந்த வேரியபிளுக்கு
மதிப்பு பாஸ் செய்யாவிட்டால் டிஃபைல்ட் மதிப்பை
எடுத்துக் கொள்ளும்.
அந்த மெதட் அழைக்கப்படும் பொழுது அந்த வேரியபிளுக்கு மதிப்பு
கொடுத்தோம் எனில் நாம் பாஸ் செய்யும் மதிப்பையோ எடுத்துக் கொள்ளும்.
கீழே உள்ள கிளாஸில் உள்ள CalculateBookRoyalties என்ற மெத்தடில்
rate என்ற வேரியபிளுக்கு 12 என்ற டிஃபால்ட்
மதிப்பு கொடுக்கப்பட்டுள்ளது.
class Author
{
//
Auto-Initialized properties
public
string Name { get; set; }
public
string Book { get; set; }
public
double Price { get; set; }
//
Calculate author's book royalties
public
double CalculateBookRoyalties(double price, int quantity, Int16 rate = 12)
{
return
(quantity * price * rate) / 100;
}
}
மேலே உள்ள CalculateBookRoyalties என்ற மெத்தட் அழைக்கப்படும்
பொழுது rate என்ற வேரியபிளுக்கு மதிப்பு கொடுக்காவிட்டால் 12 என்ற மதிப்பு எடுத்துக்
கொள்ளப்படும்.
சான்று:
class Program
{
static
void Main(string[] args)
{
Author
author = new Author { Name = "Muthukarthikeyan", Book = "c
sharp", Price = 150.00 };
//
Call a method and do not pass optional argument
double
royalty = author.CalculateBookRoyalties(150, 50);
Console.WriteLine($"Author Royalties: $ {royalty}");
Console.ReadKey();
}
}
மேலே உள்ள நிரலில்
rate என்ற வேரியபிளின் மதிப்பு பாஸ்செய்யப்பட வில்லை. எனவே அதன் மதிப்பாக 12 எடுத்துக்
கொள்ளப்படும்.
வெளியீடு:
Author Royalties: $ 900.
முழு நிரல்:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Author
{
//
Auto-Initialized properties
public
string Name { get; set; }
public
string Book { get; set; }
public
double Price { get; set; }
//
Calculate author's book royalties
public
double CalculateBookRoyalties(double price, int quantity, Int16 rate = 12)
{
return
(quantity * price * rate) / 100;
}
}
class Program
{
static
void Main(string[] args)
{
Author
author = new Author { Name = "Muthukarthikeyan", Book = "c
sharp", Price = 150.00 };
//
Call a method and do not pass optional argument
double
royalty = author.CalculateBookRoyalties(150, 50);
Console.WriteLine($"Author Royalties: $ {royalty}");
Console.ReadKey();
}
}
}
சி ஷார்ப்பில் மெத்தட் மட்டுமல்லாது கன்ட்ஸ்ரக்டர், இண்டெக்சர்,
டெலிகேட்ஸ் போன்ற வற்றிற்கும் ஆப்சனல் பராமீட்டர் பயன்படுத்தலாம்.
நன்றி
முத்து கார்த்திகேயன்.
மதுரை.
No comments:
Post a Comment