C++标准转换运算符dynamic_cast
dynamic_cast <new_type> (expression)
dynamic_cast运算符,应该算是四个里面最特殊的一个,因为它涉及到编译器的属性设置,而且牵扯到的面向对象的多态性跟程序运行时的状态也有关系,所以不能完全的使用传统的转换方式来替代。但是也因此它是最常用,最不可缺少的一个运算符。
http://cyqdata.cn/cnblogs/article-detail-42372
继续瞎掰:dynamic
大家都知道这个是语法糖。毛主席告诉过我们,要顶住敌人糖衣炮弹个的进攻,so....
C#强调类型安全,所以弄不明白为什么会有个dynamic,var至少还在编译的时候进行类型检测,编译后帮我们转换成相应的类型。
dynamic编译后是变成object,但是它又不同于object:
dynamic dy="new string";
dy=1;
object ob="new string";
ob=1
http://cyqdata.cn/cnblogs/article-detail-41927
浅谈Dynamic 关键字系列之四:dynamic为什么比反射快
Main方法如下:
static void Main(string[] args)
{
dynamic str = "abcd";
Console.WriteLine(str.Length);
Console.WriteLine();
Console.WriteLine(str.Substring(1));
Console.ReadLine
http://cyqdata.cn/cnblogs/article-detail-41358
浅谈Dynamic 关键字系列之三(下):ExpandoObject,DynamicObject,DynamicMetaObject
接上文:浅谈Dynamic关键字系列之三(上) 为什么TryXXX方法没有被调用?? 将DynamicProduct 中的name修饰符改为private: private string name; 可以在TrySetMember方法中设置断点,再次运行: 为什么访问修饰符是Public不调用TrySetMem
http://cyqdata.cn/cnblogs/article-detail-41319
浅谈Dynamic 关键字系列之三(上):ExpandoObject, DynamicObject, DynamicMetaObject
ExpandoObject:表示一个对象,该对象包含可在运行时动态添加和移除的成员。 dynamic dynEO = new ExpandoObject();
dynEO.number = 10;
dynEO.Increment = new Action(() => { dynEO.number++; });
Console.WriteLine(dynEO.number
http://cyqdata.cn/cnblogs/article-detail-41273
浅谈Dynamic 关键字系列之二:调用属性,方法,字段
新建类Product: class Product
{
public string name;
public int Id { get; set; }
public void ShowProduct()
{
Console.WriteLine("Id={0} ,Name={1}", Id, name);
http://cyqdata.cn/cnblogs/article-detail-41230
浅谈Dynamic 关键字系列之一:dynamic 就是Object
C# 4.0提供了一个dynamic 关键字,那么什么是dynamic,究竟dynamic是如何工作的呢? 从最简单的示例开始: static void Main(string[] args)
{
dynamic dyn = 1;
object obj = 1;
//在编译时将鼠标放到 &
http://cyqdata.cn/cnblogs/article-detail-41202
.NET简谈互操作(五:基础知识之Dynamic平台调用)
互操作系列文章:
.NET简谈互操作(一:开篇介绍)
.NET简谈互操作(二:先睹为快)
.NET简谈互操作(三:基础知识之DllImport特性)
.NET简谈互操作(四:基础知识之Dispose非托管内存)
.NET简谈互操作(五:基础知识之Dynamic平台调用)
我们继续.NET互操作学习。在上篇文章中我们学习了关于托管与非托管内存Dispose(释放)问
http://cyqdata.cn/cnblogs/article-detail-40986
当 dynamic 遇上 internal
dynamic 简介 .Net 4 引入了 dynamic,我们可以简单动态访问对象的属性或调用其方法,免去反射的繁琐和不雅: 1
2
3
dynamic person = new Person { ID = 1, Name = "鹤冲天" };
var name = person.Na
http://cyqdata.cn/cnblogs/article-detail-40956
Parallet - My Dynamic Language - 一款异步编程语言
Parallet - My Dynamic Language - 一款异步编程语言简介: Parallet是笔者自创的一种新的编程语言. 当初的定位是DotNet下的异步脚本, 用来弥补C#对异步编程的不足. (笔者想实现一些异步操作超多超复杂的服务器应用, 但是用C#做起来超难. ) 这个项目已经开启了
http://cyqdata.cn/cnblogs/article-detail-40621
Parallet - My Dynamic Language - 介绍
Parallet - My Dynamic Language - 介绍
简介:
Parallet是笔者自创的一种新的编程语言. 主要是基于JavaScript和C#的语法, 可以说是JS和C#的混合体.
Parallet的存在意义在于三点:
1 - &n
http://cyqdata.cn/cnblogs/article-detail-40118
.NET,你忘记了么?(八)-- 从dynamic到特性误用
1. 摘要
每个程序员都想写出漂亮的代码,但是什么是漂亮,这个我想每个人都有着自己的看法。那么我就说几种典型的想法:
A. 写出别人看不懂的代码,让别人觉得很高深。
B. 写出简短的代码
C. 用最新的语言特性写出代码
这个我不发表评论,毕竟每个人有着自己的观点,我也不能证明自己的就是对的。但是在这里,我想说一些典型的误用。
2. 从dynamic谈起
作为C#4.0的更新之一,dynamic已经
http://cyqdata.cn/cnblogs/article-detail-39787
C#4.0初探:dynamic 关键字
C#新增了dynamic关键字,正因为这一个小小的关键字,C#动态特性向前迈进了一大步。dynamic是一个类型关键字,声明为dynamic的类型与"静态类型"(这里的静态类型是指编译时确定的类型,下同)相比最大的特点它是"动态类型",它会运行时尝试调用方法,这些方法的存在与否不是在编译时检查的,而是在运行时查找,如果方法存在并且参数正确,会正常调用,否则会抛出Microsoft.CSharp.R
http://cyqdata.cn/cnblogs/article-detail-39563
DynamicControl/DynamicField 例外的解决
在使用 DynamicField / DynamicControl 时,经常在PostBack时,会出现一个例外:
The DynamicControl/DynamicField needs to exist inside a data control that is bound to a data source that supports Dynamic Data.
中文为:
绑定到
http://cyqdata.cn/cnblogs/article-detail-38442
漫谈算法(二) 动态规划 Dynamic Programming
Keywords: Dynamic Programming; Recursive Methods
[为什么写这类文章] 漫谈算法(零)序
[这系列文章里会用到的一下符号和公式] 漫谈算法(番外篇) 符号标记以及基本数学公式
动态规划,Dynamic Programming。这里的programming没有翻译成编程,是因为,这里的progr
http://cyqdata.cn/cnblogs/article-detail-36287
使用 Castal DynamicProxy 简化 Silverlight 数据绑定
大家都知道, 在使用 Silverlight 数据绑定的时候, 为了使源对象的更改能够传播到目标,源必须实现 INotifyPropertyChanged 接口。INotifyPropertyChanged 具有 PropertyChanged 事件,该事件通知绑定引擎源已更改,以便绑定引擎可以更新目标值。 下面是一个典型的例子: public class UserModel : INotif
http://cyqdata.cn/cnblogs/article-detail-31854
C#中dynamic的正确用法
dynamic是FrameWork4.0的新特性。dynamic的出现让C#具有了弱语言类型的特性。编译器在编译的时候不再对类型进行检查,编译期默认dynamic对象支持你想要的任何特性。比如,即使你对GetDynamicObject方法返回的对象一无所知,你也可以像如下那样进行代码的调用,编译器不会报错:
dynamic dynamicObject = GetDyn
http://cyqdata.cn/cnblogs/article-detail-25241
动态类型var和dynamic和传统确定类型区别和效率
伴随着vs2010的出现,c#4.0的诞生,与之而来的动态类型dynamic更是给net程序员们锦上添花,为自己的程序书写上带来了给大的便利。可到底怎么用,好不好用,效率这么样,也许是大家最迫切关注的,msdn虽然有简介和使用方法但效率问题才是是否实用的衡量标准和使用前提,本文将为您揭开谜底。
一、var、dynamic简
http://cyqdata.cn/cnblogs/article-detail-25198
DynamicData for Asp.net Mvc留言本实例 下篇 更新
我并不打算再建一个edit页来实现更新,而打算用现有的create页来实现更新功能 虽然也许这样并不符合其语义,但我仍想这么做,因为asp那时候大家都是把增删改查放在一个页面的只用参数来区别 如: article?m=add article?m=modfiy article?m=delete 由于控件的流行,细节被Asp.net隐匿了起来,很多朋友不再通过QueryString或隐藏表
http://cyqdata.cn/cnblogs/article-detail-11732
DynamicData for Asp.net Mvc留言本实例 上篇 准备工作及显示文章列表
DynamicDataMVC出现也有一段时间了,一直没有正视它,今天抽一点时间了解了一下感觉还算不错。 本身下载时自带一个博客的例子,但例子略显复杂,不容易理清思路 附:本文初稿某兄入手先读,提出诸多疑问想必其它朋友可能也会有类似问题,故蓝字注明,当然大多朋友可以省去不看 下载及新建工程 下载地址:http://www.codeplex.com/aspnet/Release/Project
http://cyqdata.cn/cnblogs/article-detail-10007