Тип данных "bool?" - что означает знак вопроса - C#
Формулировка задачи:
Здравствуйте! Читаю книгу по c#. В ней есть пример создания класса, в котором объявляется такое свойство:
Не могу понять, что означает знак вопроса после булевского типа?
public bool? WillAttend { get; set; }
Решение задачи: «Тип данных "bool?" - что означает знак вопроса»
textual
Листинг программы
// This code example demonstrates the Nullable<T> class. // The code example defines a database table in which two columns // are nullable. In the application, an array of rows is created // and initialized. The table rows could subsequently be // written to a database. using System; class Sample { // Define the "titleAuthor" table of the Microsoft "pubs" database. public struct titleAuthor { // Author ID; format ###-##-#### public string au_id; // Title ID; format AA#### public string title_id; // Author ORD is nullable. public short? au_ord; // Royalty Percent is nullable. public int? royaltyper; } public static void Main() { // Declare and initialize the titleAuthor array. titleAuthor[] ta = new titleAuthor[3]; ta[0].au_id = "712-32-1176"; ta[0].title_id = "PS3333"; ta[0].au_ord = 1; ta[0].royaltyper = 100; ta[1].au_id = "213-46-8915"; ta[1].title_id = "BU1032"; ta[1].au_ord = null; ta[1].royaltyper = null; ta[2].au_id = "672-71-3249"; ta[2].title_id = "TC7777"; ta[2].au_ord = null; ta[2].royaltyper = 40; // Display the values of the titleAuthor array elements, and // display a legend. Display("Title Authors Table", ta); Console.WriteLine("Legend:"); Console.WriteLine("An Author ORD of -1 means no value is defined."); Console.WriteLine("A Royalty % of 0 means no value is defined."); } // Display the values of the titleAuthor array elements. public static void Display(string dspTitle, titleAuthor[] dspAllTitleAuthors) { Console.WriteLine("*** {0} ***", dspTitle); foreach (titleAuthor dspTA in dspAllTitleAuthors) { Console.WriteLine("Author ID ... {0}", dspTA.au_id); Console.WriteLine("Title ID .... {0}", dspTA.title_id); Console.WriteLine("Author ORD .. {0}", dspTA.au_ord ?? -1); Console.WriteLine("Royalty % ... {0}", dspTA.royaltyper ?? 0); Console.WriteLine(); } } } /* This code example produces the following results: *** Title Authors Table *** Author ID ... 712-32-1176 Title ID .... PS3333 Author ORD .. 1 Royalty % ... 100 Author ID ... 213-46-8915 Title ID .... BU1032 Author ORD .. -1 Royalty % ... 0 Author ID ... 672-71-3249 Title ID .... TC7777 Author ORD .. -1 Royalty % ... 40 Legend: An Author ORD of -1 means no value is defined. A Royalty % of 0 means no value is defined.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д