Параметрүүдийн массив, params түлхүүр үг.

Өмнөх хичээлүүдийн бүх жишээнүүдэд тогтмол тооны параметерүүдийг ашигласан. Харин params түлхүүр үгийг ашиглан аргад тодорхойгүй тоотой параметрийг дамжуулж болно.

void Sum(params int[]  numbers)
{
    int result = 0;
    foreach (var n in numbers)
    {
        result += n;
    }
    Console.WriteLine(result);
}
 
int[] nums = { 1, 2, 3, 4, 5};
Sum(nums);
Sum(1, 2, 3, 4);
Sum(1, 2, 3);
Sum();

Материалыг бүртгэлтэй хэрэглэгч үзнэ.

how_to_regБүртгүүлэх

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 467 Бүртгүүлэх

Загвар (Prototype) хэв өмнө нь үүсгэсэн загвар обьектоос үндэслэн обьектыг үүсгэх боломжийг олгодог. Өөрөөр хэлбэл хэв обьектуудын хуулбар /клон/ үүсгэх техникийг хэрэгжүүлдэг.

Хэвийг хаана ашиглах

Шинээр үүсгэгдэх обьектын төрлийг програмын ажиллагааны үед динамикаар тодорхойлох хэрэгцээтэй үед

  • Классын зэрэгцээ шатлалаас бүтээгдхүүн обьектуудыг үүсгэхийн тулд тусдаа классын үйлдвэрийн шатлалыг үүсгэхийг хүсэхгүй үед. Жишээ нь абстракт үйлдвэр хэвийг ашиглахад үүнийг хийдэг.
  • Обьектыг байгуулагчаар үүсгэн, утга олгохоос илүү хувилбар обьектын хуулбарлалт байх үед. Ялангуяа обьект хязгаарлагдмал цөөн тооны боломжит төлөвийг авч болох тохиолдолд.

  Нээгдсэн тоо: 3450 Төлбөртэй

Обьект хандлагат програмчлал encapsulation - хайрцаглалт, inheritance - удамшилт, polymorphism - полиморфизм гэсэн гурван үндсэн зарчим дээр суурилдаг гэдгийг өмнөх хичээлүүдэд үзсэн. Энэ хичээлээр polymorphism - полиморфизм зарчмын талаар үзэх болно. Монголоор орчуулгад тохирох үгийг би олж чадаагүй. Полиморфизм гэдэг нь суурь классын ажиллагааны төлөв байдлыг хүүхэд класст өөрчлөхийг хэлнэ. Ойлгомжгүй байна уу. Гэхдээ үнэндээ бол тийм нарийн зүйл биш.

  Нээгдсэн тоо: 496 Бүртгүүлэх

Хэрвээ системийн өөрийн дотоод онцгой нөхцлийн төрлүүд тохиромжгүй бол бид өөрсдөө төрлүүд үүсгэж болно. Бүх онцгой нөхцлийн суурь класс Exception учраас өөрийн төрлийг үүсгэхдээ бид энэ классаас удамшуулна.  
Жишээ нь манай програмд насны хязгаарлалт байлаа гэе.

try
{
    Person person = new Person { Name = "Tom", Age = 17 };
}
catch (Exception ex)
{
    Console.WriteLine($"Алдаа: {ex.Message}");
}
 
class Person
{
    private int age;
    public string Name { get; set; } = "";
    public int Age
    {
        get => age;
        set
        {
            if (value < 18)
                throw new Exception("18 нас хүрээгүй бол бүртгэл хаалттай");
            else
                age = value;
        }
    }
}

Person классийн age шинжид утга олгохдоо шалгалт хийн нас 18 -аас бага бол онцгой нөхцлийг үүсгэнэ.

  Нээгдсэн тоо: 633 Төлбөртэй

Програмд өгөгдөл хадгалахдаа хувьсагчийг ашигладаг. Хувьсагч нь тодорхой төрлийн утгыг хадгалж буй санах ойн нэрлэгдсэн хэсэг юм. Хувьсагч төрөл, нэр, утгатай байна. Хувьсагчид ямар төрлийн өгөгдөл хадгалахыг төрөл тодорхойлдог. Ямарч хувьсагчийг ашиглахын өмнө тодорхойлох хэрэгтэй. Хувьсагч тодорхойлох /зарлах/ бичлэгийн дүрэм

төрөл хувьсагчийн_нэр;

байна. Эхлээд хувьсагчийн төрөл дараа нь түүний нэр. Дараах шаардлагыг хангасан дурын нэрээр хувьсагчийг нэрлэж болно.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 384

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 481

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 459

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 531

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 596

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 593

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 740

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 881

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 872

 
Энэ долоо хоногт

олон гишүүнтийн язгуурууд x1, x2, x3 (x1<x2<x3) бол
1.
2. x1, x2, x3 арифметик прогрес үүсгэх бол
3. Уул прогрессын ялгавар
4.

Нээгдсэн тоо : 1338

 

sin90 -ийг олно уу.

Жич: Хатуу самар даа. Сурагчид барна гэхэд хүнд болов уу. ЕБС-ийн хүрээний аргаар л бодолтыг хийж байгаа тул бодолтыг харвал гайгүй ч юм шиг санагдаж магадгүй гоё бодлого.

Нээгдсэн тоо : 547

 

тэгшитгэлийг бод.

Жич: Бодох арга орж ирж байна уу. Найз нөхөд, багштайгаа хамжаад үзээрэй. Иймэрхүү бодлогууд сэтгэлгээг хөгжүүлэх, арга техникт суралцахад тустай. 

Нээгдсэн тоо : 813