• Пожаловаться

Алекс Jenter: Программирование на Visual C++. Архив рассылки

Здесь есть возможность читать онлайн «Алекс Jenter: Программирование на Visual C++. Архив рассылки» весь текст электронной книги совершенно бесплатно (целиком полную версию). В некоторых случаях присутствует краткое содержание. категория: Программирование / на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале. Библиотека «Либ Кат» — LibCat.ru создана для любителей полистать хорошую книжку и предлагает широкий выбор жанров:

любовные романы фантастика и фэнтези приключения детективы и триллеры эротика документальные научные юмористические анекдоты о бизнесе проза детские сказки о религиии новинки православные старинные про компьютеры программирование на английском домоводство поэзия

Выбрав категорию по душе Вы сможете найти действительно стоящие книги и насладиться погружением в мир воображения, прочувствовать переживания героев или узнать для себя что-то новое, совершить внутреннее открытие. Подробная информация для ознакомления по текущему запросу представлена ниже:

libcat.ru: книга без обложки

Программирование на Visual C++. Архив рассылки: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программирование на Visual C++. Архив рассылки»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

РАССЫЛКА ЯВЛЯЕТСЯ ЧАСТЬЮ , НА САЙТЕ КОТОРОГО ВСЕГДА МОЖНО НАЙТИ ВСЮ НЕОБХОДИМУЮ РАЗРАБОТЧИКУ ИНФОРМАЦИЮ, СТАТЬИ, ФОРУМЫ, РЕСУРСЫ, ПОЛНЫЙ АРХИВ ПРЕДЫДУЩИХ ВЫПУСКОВ РАССЫЛКИ И МНОГОЕ ДРУГОЕ.

Алекс Jenter: другие книги автора


Кто написал Программирование на Visual C++. Архив рассылки? Узнайте фамилию, как зовут автора книги и список всех его произведений по сериям.

Программирование на Visual C++. Архив рассылки — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программирование на Visual C++. Архив рассылки», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

public virtual bool Reviewed {

get {

return reviewed;

}

set {

reviewed = value;

}

}

}

MC++

#using

[AttributeUsage(AttributeTargets::All)]

public __gc class DeveloperAttribute : public System::Attribute {

private:

// Закрытые поля.

String* name;

String* level;

Boolean reviewed;

public:

// Конструктор принимает два обязательных параметра: имя и уровень.

DeveloperAttribute(String* name, String* level) {

this->name = name;

this->level = level;

this->reviewed = false;

}

// Свойство Name.

// Только для чтения.

__property virtual String* get_Name() { return name; }

// Свойство Level.

// Только для чтения.

__property virtual String* get_Level() { return level; }

// Свойство Reviewed.

// Чтение / Запись.

__property virtual Boolean get_Reviewed() { return reviewed; }

__property virtual void set_Reviewed(Boolean value) { reviewed = value; }

}

Visual Basic.NET

Public Class DeveloperAttribute

Inherits System.Attribute

' Закрытые поля.

Private name As String

Private level As String

Private reviewed As Boolean

' Конструктор принимает два обязательных параметра: имя и уровень.

Public Sub New(name As String, level As String)

Me.name = name

Me.level = level

Me.reviewed = False

End Sub

' Свойство Name.

' Только для чтения.

Public Overridable ReadOnly Property Name() As String

Get

Return name

End Get

End Property

' Свойство Level.

' Только для чтения.

Public Overridable ReadOnly Property Level() As String

Get

Return level

End Get

End Property

' Свойство Reviewed.

' Чтение / Запись.

Public Overridable Property Reviewed() As Boolean

Get

Return reviewed

End Get

Set

reviewed = value

End Set

End Property

End Class

Применять этот атрибут можно, используя как полное имя DeveloperAttribute, так и сокращенное – Developer:

C#

[Developer("Иван Семенов", "1")]

[Developer("Иван Семенов", "1", Reviewed = true)]

MC++

[Developer(S"Иван Семенов", S"1")]

[Developer(S"Иван Семенов", S"1", Reviewed = true)]

Visual Basic.NET

В первом примере показано применение атрибута с одним обязательным параметром, а во втором – с обоими типами параметров.

Доступ к информации, хранящейся в атрибутах

Теперь настало время рассмотреть механизм получения атрибутов, ведь мало научиться сохранять свои атрибуты в метаданных, важно еще и уметь получать и использовать их. К счастью, получение пользовательского атрибута – простая задача. Сначала объявляется переменная с типом атрибута, который нужно получить, затем она инициализируется с помощью вызова метода Attribute.GetCustomAttribute. Все, теперь можно использовать любые доступные свойства атрибута.

Получение одиночного атрибута

В следующем примере атрибут DeveloperAttribute(рассмотренный выше) применяется к классу MainAppв целом. Метод GetAttributeиспользует Attribyte.GetCustomAttributeдля получения состояния атрибута DeveloperAttributeперед тем, как вывести информацию на консоль.

C#

using System;

[Developer("Иван Семенов", "42", Reviewed = true)]

class MainApp {

public static void Main() {

// Вызвать функцию получения и отображения атрибута.

GetAttribute(typeof(MainApp));

}

public static void GetAttribute(Type t) {

// Получить атрибут.

DeveloperAttribute MyAttribute =

(DeveloperAttribute)Attribute.GetCustomAttribute(t, typeof(DeveloperAttribute));

if (MyAttribute == null) {

Console.WriteLine("Атрибут не найден.");

} else {

// Получить поле Имя.

Console.WriteLine("Имя: {0}." , MyAttribute.Name);

// Получить поле Уровень.

Console.WriteLine("Уровень: {0}." , MyAttribute.Level);

// Получить поле Проверено.

Console.WriteLine("Проверено: {0}." , MyAttribute.Reviewed);

}

}

}

MC++

#using using namespace System;

[Developer(S"Иван Семенов", S"42", Reviewed = true)]

public__gc class MainApp{

public:

static void GetAttribute(Type* t) {

// Получить атрибут.

DeveloperAttribute* MyAttribute =

__try_cast

(Attribute::GetCustomAttribute(t, __typeof(DeveloperAttribute)));

if (MyAttribute == 0)

Console::WriteLine(S"Атрибут не найден.");

else {

// Получить поле Имя.

Console::WriteLine(S"Имя: {0}." , MyAttribute->Name);

// Получить поле Уровень.

Console::WriteLine(S"Уровень: {0}." , MyAttribute->Level);

// Получить поле Проверено.

Console::WriteLine(S"Проверено: {0}." , MyAttribute->Reviewed);

}

}

};

Читать дальше
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программирование на Visual C++. Архив рассылки»

Представляем Вашему вниманию похожие книги на «Программирование на Visual C++. Архив рассылки» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё не прочитанные произведения.


Отзывы о книге «Программирование на Visual C++. Архив рассылки»

Обсуждение, отзывы о книге «Программирование на Visual C++. Архив рассылки» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.