Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
[Optional Parameters]
private void DoSmth(string SomeText, int SomeValue)
{
Console.WriteLine(“test»)
}
[Optional Parameters]
private void DoSmth(string SomeText)
{
Console.WriteLine(«test»)
}
[Optional Parameters]
private void DoSmth(int SomeValue)
{
Console.WriteLine(«test»)
}
private void DoSmth()
{
var someVariable = "";
someVariаble = "111";
if (someVariable != "")
Console.Write("test successful!!!");
else
Console.Write("test failed...");
}
3. Вывести «var» за пределы функций/методов.
<%
private void Page_Load(object sender, EventArgs e) {
{
DoSmth();
}
private void DoSmth()
{
Respone.Write(«Hello World»)
}
%>
class MyClass
{
private AnotherClass anotherObject;
void SomeMethod() { anotherObject.SomeMethod(); }
int GetSomeResult() { return anotherObject.GetSomeResult(); }
...
class MyClass
{
private AnotherClass anotherObject;
delegate SomeMethod, GetSomeResult to anotherObject;
Чего хотят программисты:Этого хотят не программисты, а «пэ-ха-пэшники».
1. Опциональные параметры в функциях и методах.
2. Сделать опциональным ключевое слово «var», все равно будем отталкиваться от названия переменной.
3. Вывести «var» за пределы функций/методов.
4. Проваливающийся switch (пример)
1) Константный switch. Кажется, идея заимствована из языка D, хотя не уверен.
Суть в том, что если перед switch стоит слово const, то внутри switch-a должны быть рассмотрены все случаи ветвления. Иначе происходит ошибка компиляции.
Не пойму, накой чёрт я должен писать «using System.Linq;» в каждом файле, где использую Linq?
[OptionalParameters]
void SomeFunc(string s, object o) { ... }
...
SomeFunc("Hello world");
SomeFunc(null);
public var SomeFunc() { ... } // верни мне не знаю что
void SomeFunc(var arg0, var arg1) { ... } // возьми не знаю что и сделай что-нибудь
IEnumerable<T> foo(TreeNode node){
foreach (var node in node.Children){
var nodes = foo(node)
foreach (var n in node.Children){
yield return n;
}
yield return node;
}
}
* This source code was highlighted with Source Code Highlighter.IEnumerable<T> foo(TreeNode node){
foreach (var node in node.Children){
yield! return foo(node)
yield return node;
}
}
* This source code was highlighted with Source Code Highlighter.
Чего мы ждем от C# 4.0