Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Название темы включает слова - "Помогите", "Спасите", "Срочно"
Название темы не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте >>>правила <<< и заново правильно создайте тему.
 
Опции темы
Старый 06.07.2018, 13:04   #21
Мaкс
Форумчанин
 
Аватар для Мaкс
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 399
Репутация: -5
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А не какое-нибудь реальное применение интерфейсов?
Ссылочку можно пожалуйста?
Мaкс вне форума  
Старый 06.07.2018, 13:29   #22
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,034
Репутация: 2028

icq: 216409213
По умолчанию

Я вам дал конкретное описание задачи. Напишите без интерфейсов эту функцию (функции).
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума  
Старый 06.07.2018, 13:47   #23
Мaкс
Форумчанин
 
Аватар для Мaкс
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 399
Репутация: -5
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А где логгеры?
Я не учил ещё логгеры...
Мaкс вне форума  
Старый 06.07.2018, 13:52   #24
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,817
Репутация: 3300

icq: 512-765
skype: alexp.frl
По умолчанию

А, ну тогда да, надо искать учебник по логгерам, иначе никак.
Alex11223 на форуме  
Старый 06.07.2018, 13:53   #25
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,034
Репутация: 2028

icq: 216409213
По умолчанию

Вы прикидываетесь? Их не надо учить, тем более для примера я их упростил. Это просто класс с методом Log(строка) и парой еще каких-нибудь, типа в одном - открыть и закрыть файл, а в другом подключиться к базе и отключиться от нее.
Бросайте программирование с таким подходом.
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума  
Старый 06.07.2018, 14:07   #26
Мaкс
Форумчанин
 
Аватар для Мaкс
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 399
Репутация: -5
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Напишите без интерфейсов эту функцию (функции).
Код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
// Создаем два интерфейса, описывающих абстрактные методы 
// арифметических операций и операций Sqrt и Sqr


// Данный класс реализует интерфейс IArOperation
class A
{
    int My_x, My_y;

    public int x //Возвращает просто.
    {
        set { My_x = value; }
        get { return My_x; }
    }

    public int y //Возвращает просто.
    {
        set { My_y = value; }
        get { return My_y; }
    }

    public A() { } //Только для избежания ошибки.
    public A(int x, int y) //Конструктор для создания объекта.
    {
        this.x = x;
        this.y = y;
    }

    // Реализуем методы интерфейса
    public virtual int Sum() //Возвращает x + y
    {
        return x + y;
    }

    public int Otr() //Возвращает x - y
    {
        return x - y;
    }

    public int Prz() //Возвращает x * y
    {
        return x * y;
    }

    public int Del() //Возвращает x / y
    {
        return x / y;
    }

    // В данном классе так же можно реализовать собственные методы
    public virtual void rewrite() //Вывод значения x и y.
    {
        Console.WriteLine("Переменная x: {0}\nПеременная y: {1}", x, y);
    }
}

// Данный класс унаследован от класса А, но при этом в нем не нужно
// заново реализовывать интерфейс, но при этом можно переопределить
// некоторые его методы
class Aa : A
{
    public int z;

    public Aa(int z, int x, int y)  //Конструктор для создания объекта.
        : base(x, y)
    {
        this.z = z;
    }

    // Переопределим метод Sum
    public override int Sum() //Метод для вывода значения x + y + z.
    {
        return base.x + base.y + z;
    }

    public override void rewrite() //Вызыв значений x, y и z.
    {
        base.rewrite();
        Console.WriteLine("Переменная z: " + z);
    }
}

// Данный класс унаследован от класса А, и при этом
// реализует интерфейс ISqrSqrt
class Ab : A
{
    public int Sqr(int x) //x в квадрате.
    {
        return x * x;
    }

    public int Sqrt(int x) //Корень от x.
    {
        return (int)Math.Sqrt((double)(x));
    }
}

class Program
{
    static void Main()
    {
        A obj1 = new A(x: 10, y: 12);
        Console.WriteLine("obj1: ");
        obj1.rewrite();
        Console.WriteLine("{0} + {1} = {2}", obj1.x, obj1.y, obj1.Sum());
        Console.WriteLine("{0} * {1} = {2}", obj1.x, obj1.y, obj1.Prz());
        Aa obj2 = new Aa(z: -3, x: 10, y: 14);
        Console.WriteLine("\nobj2: ");
        obj2.rewrite();
        Console.WriteLine("{0} + {1} + {3} = {2}", obj2.x, obj2.y, obj2.Sum(), obj2.z);

        Console.ReadKey();
    }
}


Последний раз редактировалось Мaкс; 06.07.2018 в 14:07. Причина: Добавил тег Код
Мaкс вне форума  
Старый 06.07.2018, 14:09   #27
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 12,034
Репутация: 2028

icq: 216409213
По умолчанию

К чему вы цитируете мои посты, если суете этот бред?
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума  
Старый 06.07.2018, 14:21   #28
Мaкс
Форумчанин
 
Аватар для Мaкс
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 399
Репутация: -5
По умолчанию

Вы же просили написать написать без интерфейсов функции, функции это метод, конструктор, индексатор, свойство и всё в таком роде, интерфейс это вот это:
interface имя {}

Ну убрал индексатор и иерахии, вот так:
class Class1 : IOne ---> Class1
другое это стандарт метода.
Мaкс вне форума  
Старый 06.07.2018, 14:24   #29
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 16,817
Репутация: 3300

icq: 512-765
skype: alexp.frl
По умолчанию

Так речь была про логгеры, а не про эту фигню.
Alex11223 на форуме  
Старый 06.07.2018, 14:27   #30
Мaкс
Форумчанин
 
Аватар для Мaкс
 
Регистрация: 12.06.2018
Адрес: Научная столица России.
Сообщений: 399
Репутация: -5
По умолчанию

И что мне делать с этим логгером?
Код:

    public void Log("d")
    {
        return "dg";
    }

Я не знаю!
Мaкс вне форума  
Закрытая тема

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
рассчитать CRC16. с текстовыми и бинарными файлами работает без проблем. Если же подсунуть ей exe файл, то вылетает. ilyakonst Общие вопросы C/C++ 4 12.04.2016 18:01
если Edit1 ='Рис', Edit2 ='10', Edit3 ='6', то автоматически заполняется Edit4 ='100'. Какой оператор лучше использовать? Юрий9 БД в Delphi 7 26.02.2016 19:04
Какой фреймворк изучить для интерфейсов БД Goretsv PHP 4 17.07.2012 03:49
Объясните смысл интерфейсов MyLastHit C# (си шарп) 8 22.11.2011 18:43
Есть ли смысл в использовании предкомпилированных заголовков, если я в них ничего не добавляю? TwiX Visual C++ 4 19.09.2011 14:15


03:34.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru