多线程的常见用法详解前言:前面几节分别介绍了下C#基础技术中的反射、特性、泛型、序列化、扩展方法、Linq to Xml等,这篇跟着来介绍下C#的另一基础技术的使用。最近项目有点紧张,所以准备也不是特别充分。此篇就主要从博主使用过的几种多线程的用法从应用层面大概介绍下。文中观点都是博主个人的理解,如...
分类:
编程语言 时间:
2015-08-06 23:56:05
阅读次数:
168
1. 介绍 function 是一种通用、多态的函数封装。std::function 的实例可以对任何可以调用的 目标 进行存储、复制、和调用操作,这些目标包括函数、lambda 表达式、绑定表达式、以及其它函数对象等。(c++11起的版本可用)
function(和bind一样)可以实现类似函数指针的功能,却比函数指针更加灵活(体现在占位符上面),尤其是在很多成员调用同一个函数(仅仅是参数...
分类:
编程语言 时间:
2015-08-06 20:28:49
阅读次数:
182
链表和树都自带递归特性,我很喜欢。这一题很简单,有意思的是我是先把内部的 lambda 表达式写出来之后才发现可以直接用这个函数本身做递归。ListNode* removeElements(ListNode* head, int val) { if (head == nullptr){ ...
分类:
其他好文 时间:
2015-08-06 14:45:24
阅读次数:
102
编写扩展方法public static decimal GetNextVal(this System.Data.Entity.DbContext ctx, string seqName) { return ctx.Database.SqlQuery(string.Format("SELECT {0}...
分类:
数据库 时间:
2015-08-06 09:22:27
阅读次数:
239
Humanizer(人性化) Humanizer meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities str...
前言:前面几节分别介绍了下C#基础技术中的反射、特性、泛型、序列化、扩展方法、Linq to Xml等,这篇跟着来介绍下C#的另一基础技术的使用。最近项目有点紧张,所以准备也不是特别充分。此篇就主要从博主使用过的几种多线程的用法从应用层面大概介绍下。文中观点都是博主个人的理解,如果有不对的地方望大家...
分类:
编程语言 时间:
2015-08-05 12:39:04
阅读次数:
152
参考《21天学通C++》第21与第22章节,对函数对象进行介绍,同时通过lambda表达式这一匿名函数对象的简洁方式加深对函数对象的理解。本篇博文的主要内容是:
(1) 函数对象的概念;
(2) 将函数对象用作谓词;
(3) 如何使用函数对象实现一元、二元谓词;
(4) 如何编写lambda表达式;
(5) 如何将lambda表达式用作谓词;
(6) 如何编写可存储和可操作状态的lam...
分类:
编程语言 时间:
2015-08-04 02:08:36
阅读次数:
244
Lambda表达式只是用更简单的方式来写匿名方法,彻底简化了对.NET委托类型的使用。现在,如果我们要使用泛型 List 的 FindAll() 方法,当你从一个集合去提取子集时,可以使用该方法。// 该方法唯一的参数是一个System.Predicate类型的泛型委托public List Fin...
表达式树总结
基础
表达式树提供了一个将可执行代码转换成数据的方法.如果你要在执行代码之前修改或转换此代码,那么它是很有用的.有其是当你要将C#代码----如LINQ查询表达式转换成其他代码在另一个程序----如SQL数据库里操作它.
表达式树的语法:
考虑下面简单的Lambda表达式:
Funcfunction=(a,b)=>a+b;
这个语法包含三个部分:
1.一个声明 : Fu...
LINQ提供程序
.NET3.5包含了几个LINQ提供程序.
LINQ提供程序为特定的数据源实现了标准的查询操作符.
LINQ提供程序也许会实现LINQ定义的更多扩展方法,但至少要实现标准操作符.
LINQ to XML 不仅实现了专门用于XML 的方法,还实现了其他方法,例如System.Xml.Linq 命名空间的Extensions类定义的方法Elements(),Descen...