C# импортировать класс как * - PullRequest
4 голосов
/ 29 февраля 2020

После создания моего первого большого проекта с использованием C# я столкнулся с проблемой. Мой файл проекта составляет около 7000 строк, большой атм и заполнен функциями и другими классами. Это, конечно, немного грязно, и чтобы найти код, который мне действительно нужен, мне иногда нужно немного прокрутить, поэтому я хочу удалить все классы и функции в другой файл. Я знаю, что могу просто добавить файл класса c#, а затем получить к нему доступ, выполнив

    namespace Namespace
{
    class Functions
    {
        // Example Functions here
    }
}

    namespace OtherNamespace
{
    class OtherClass
    {
        Namespace.Functions.Examplefunction
    }
}

Если примерная функция действительно существует, то есть. Но я хотел бы избавиться от части Namespace.Functions, поскольку это избавило бы меня от необходимости много печатать, и я часто использую эти функции. Как бы я это сделал? Это вообще возможно?

Я знаю, что это возможно в python, например,

import math as *

, тогда вам не придется писать

math.cos(0)

, но вместо этого вы можете просто написать

cos(0)

1 Ответ

5 голосов
/ 29 февраля 2020

Вы можете использовать функцию импорта stati c из C#, если вы хотите использовать много вспомогательных функций stati c. Я привел базовый c пример. Вы можете использовать это для стандартных. NET рамочных классов, таких как System.Math, System.Console et c.

namespace Utils 
{
    // using static
    using static Utils.Helper;

    public class Program
    {
        public static void Main()
        {
            // no need to type Helper.Pow(2, 2);
            var x = Pow(2, 2);

            Console.WriteLine(x);
        }
    }
}

namespace Utils
{
    public static class Helper
    {
        public static double Pow(int x, int pow) => Math.Pow(x, pow);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...