Никита
неизменяемый readonly?
RA-TA-TATA
нет
RA-TA-TATA
Обычный массив
RA-TA-TATA
public string[]
Сергей
Этот не изменяемый. Ты его не очистишь
Stas
public string[] newArr;
Stas
oldArr = newArr
Stas
ну это тоже null
Stas
еслиже тебе значения вычистить то к каждому элементу StringEmpty, только длина массива не изменится
RA-TA-TATA
использовал null
Stas
грубо говоря в колекциях тоже самое происходит
Stas
там массивам также null присваевается, GC подчистит ненужный кусок
RA-TA-TATA
Подскажите, как работает тут override public class Phone { public string Name { get; set; } public int Price { get; set; } public override string ToString() { return $"Смартфон {this.Name}; цена: {this.Price}"; } }
Hermesis
у любого объекта есть метод ToString. ты можешь его переписать в своём классе, если хочешь, чтобы выдавалось что-то конкретное
Hermesis
всё наследует object и его базовые методы
RA-TA-TATA
то есть я приписываю override, пишу название обычного метода и его тем самым переопределяю?
Hermesis
только если он позволяет. то есть если он виртуальный или абстрактный
Hermesis
ну и только *родительский* метод
RA-TA-TATA
А получается когда мы пишем так <Button x:Name="phoneButton" Width="250" Height="40" HorizontalAlignment="Center"> <Button.Content> <local:Phone Name="Lumia 950" Price="700"/> </Button.Content> </Button> то в <local/> в Name и Price вызывается метод ToString?
Hermesis
когда ты любой объект пытаешься отобразить как строку, неявно вызывается ToString
Hermesis
Странный наверно вопрос, но что обозначает $? Знакомо, но что-то подзабыл.
позволяет напрямую в строке обращаться к переменным вместо string.Format
Никита
Типо Console.WriteLine($"Значение переменной {peremennay} ");
Hermesis
типа string.Format("Переменная один {0}, переменная два {1}", var1, var2); равно $"Переменная один {var1}, переменная два {var2}";
Hermesis
https://docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/tokens/interpolated
Ernest
создаю проект,в котором есть три класса:Person->Student->Teacher. Студент и учитель наслдуют класс Персон. Мне нужно реализовать чтобы У каждого Teacher должен был список Students, которыми он руководит, у каждого Student - Teacher, который им руководит.
Ernest
для учителя я так понимаю это
Ernest
public List<Student.Student> students = new List<Student.Student>();
Ernest
так ведь?
Ernest
а для ученика?
Сергей
а для ученика Teacher teacher; если руководитель один
Ernest
Public Teacher teacher?
Сергей
Да. Можно так.
Ernest
Спасибо
Кейтлин
Привет всем! как скомпилировать проект одним файлом?
Anonymous
f5 вроде бы. И ищи файл .exe
RA-TA-TATA
Ставишь сверху Release как-то так) 1 раз запускаешь и в проекте папка бин/рилиз/твойфайл.ехе
Anonymous
Привет. Работаю в Visual Studio и такая проблема часто появляется. Например, я написал какую-то строчку кода, хочу по центру что-то добавить, но он заменяет символы, которые там есть.
Anonymous
Как исправить?
Stas
Клавиша insert
Anonymous
Все, спасибо)
Никита
Вопрос для знающих WPF. Есть проект на основе MVVM, есть форма на которой расположен DataGrid, каждая строка DataGrid - это элемент класса. То есть ItemsSourse DataGrid - это лист<class>, так вот в этом классе есть свойство color, оно меняется во время работы программы. Мне же требуется передавать вот эту переменную в значение Foregraund каждой строки. Сделал следующим образом: http://qaru.site/questions/267295/programmatically-assigning-a-color-to-a-row-in-datagrid/1352715#1352715 . При первой загрузке формы все хорошо, все правильно, но при изменении Color для любой из строк, цвет не меняется.
Кейтлин
Я знаю но, я про то что сама программа весит 10кб и с ней должен перемещаться dll файл DotNetZip.dll как их объеденить ?
Кейтлин
Привет всем! как скомпилировать проект одним файлом?
Кейтлин
f5 вроде бы. И ищи файл .exe
Кейтлин
Ставишь сверху Release как-то так) 1 раз запускаешь и в проекте папка бин/рилиз/твойфайл.ехе
Никита
Носи рядом
Никита
либы для того и есть)
Никита
по-моему можно в ресурсы загрузить, но это муторно будет
Кейтлин
как можно в ресурсы?
Кейтлин
я просто делаю лаунчер для игры
Кейтлин
поэтому и важно одним файлом
RA-TA-TATA
ребята, out часто используется?
Никита
достаточно)
RA-TA-TATA
не проще ретерном?
Никита
удобно, допустим есть у тебе переменная int i = 0; передаешь в метод другой формы new Form().ShowCard(out i);
Никита
retutn этого метода возвращает bool допустим
Никита
то есть ты проверяешь все ли нормально прошло
Никита
если да, то берешь эту переменную и используешь ее
Semyon
хорошо для методов TryBlaBla(out int result)
RA-TA-TATA
то есть out просто заменяет return?
Semyon
пример public static bool TryParse (string s, out int result);
Сергей
до недавнего времени в c# не было кортежей и ретерном ты мог вернуть не более одного результата. Если нужно вернуть 2 и более используются out параметры. На текущий момент ты можешь вернуть кортеж с двумя и более результатами в ретерне
Semyon
почитай про out, там есть особенности
RA-TA-TATA
да уже читаю
Semyon
после прочтения сам себе ответишь > то есть out просто заменяет return?
Semyon
методы TryParse удобно использовать в коде (красивый код получается)
Semyon
плюс эксепшены не ловишь
Semyon
короче с опытом придет, я бы на этот счет не парился
murtazo
Добрый день! Может кто сталкивался с этим: Пытаюсь запустить asp.net vb.net webforms (подключение к бд по ado.net) .net 3.5-4.5 под линукс(ubuntu 16.04) с mono framework (пробовал версии 4 и 5.10). Не работают объекты Dataset, DataTable,Datacolumn и т.д... К базе подключается без проблем. В качестве веб-сервера использовал mono-xsp, также apache2 c apache mod_mono. Linq to db без проблем работает. Спасибо
RA-TA-TATA
Ребят, class Program { static int a = 9; public static void Main(string[] args) { int a = 5; // скрывает переменную a, которая объявлена на уровне класса if (true) { int a = 3; Console.WriteLine(a); // 3 } Console.ReadLine(); } } Console.ReadLine(); } ```
RA-TA-TATA
почему не сработает?
Сергей
что не сработает то?
RA-TA-TATA
код не сработает
Сергей
цель данного кода не ясна ни нам, ни компилятору
Semyon
int a = 5; // скрывает переменную a, которая объявлена на уровне класса ???????