回复 明月回春 的帖子 % i& Y V3 C. E: t/ s- M3 n; O2 h. \0 Z3 m
语言级访问数据库说的是Linq to Sql吧。那东西基本上就是个语法糖,而且微软也已经停止支持了,转而发展Entity Frameworks去了。 " x5 C' k) r) J. |Linq用起来还是很爽的,用类似于sql的集合操作语言,用来对付collections和xml dom之类的东西写起来真的很省力(当然效率是个问题)
回复 老兵帅客 的帖子7 t4 D2 b( z) U- U* {$ f
- m8 R& I* I' ]( N
在wikipedia上搜了一下reflection C++。 0 [4 M$ t+ r) B; ~$ k
Qt/C++2 o; ?- ~+ h0 N3 z" p/ l9 y
) i4 v! Y+ w. M6 p0 d
Qt framework extends C++ with its meta-language and provides reflection ability of member/method reference and query by name for Qt objects with QMetaObject class, which contains meta-information about the Qt objects.
Objective-C is a reflective, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.
% D) T4 Z, M; J, `0 `澄清一点,Linq和Linq to Sql不是同一个东西。! o* R) }0 p$ G4 Z
Linq是.NET引入的一种新的语言特性,是一种类似于sql的集合操作语法。Linq是个有意义的尝试,有了它对集合操作的coding效率大大提高了。Linq可以操作所有集合类型(例如System.Collections命名空间下的所有集合类),除了Linq to Sql之外,还有Linq to Xml, Linq to Dataset等等。9 V0 u3 a- I6 e. ~2 _
6 q3 F1 _' d, ~: e+ PLinq to Sql是架构在Linq上的一层对数据库访问的支持。对数据库的访问还是通过API来做的。微软停止的是API的开发,Linq的语言特性是保留的。