C#
Создаем новое C# консольное приложение... и напишем код
using System;
namespace ConsoleApplication1
{
class Book
{
// поля класса
public string Name;
public int Price;
// явный оператор преобразования с Book в Car
public static explicit operator Car(Book book)
{
Car car = new Car();
car.ModelName = book.Name;
return car;
}
// явный оператор преобразования с Book в int
public static explicit operator int(Book book)
{
return book.Price;
}
}
class Car
{
// поле класса
public string ModelName;
}
class Program
{
static void Main(string[] args)
{
// заполняем книгу
Book book1 = new Book() { Name = "Властелин Колец", Price = 200 };
// вызываем явный оператор преобразования c Book в Car
Car car1 = (Car)book1;
// Показываем на экране
Console.WriteLine(car1.ModelName);
// на экране увидим "Властелин Колец"
// вызываем явный оператор преобразования c Book в int
int value = (int)book1;
// value = 200
}
}
}