受保护的模块成员

时间:2010-07-20 21:32:41

标签: d

根据D docs(http://www.digitalmars.com/d/2.0/attribute.html#ProtectionAttribute),受保护的模块成员是非法的,但编译器允许我这样做。

module foo;
protected
{
    int bar; 
}

这是文档中的错误,编译错误还是我做错了什么? 实际上这不是文档和现实之间唯一的不一致,所以这个引用(http://www.digitalmars.com/d/2.0)是否真实?是否存在更多实际语言描述? 我的配置:dmd 2.047,OS Windows 7,x86

1 个答案:

答案 0 :(得分:4)

编译器允许在没有任何效果的地方使用属性。这很不幸,因为它令人困惑。希望他们最终会被禁止,就像他们已经有的一样。

在线文档不完整。如果你认真学习D,你可能想购买Andrei Alexandrescu撰写的“The D Programming Language”一书。它是在一个月前发布的。它涵盖了在线文档没有的一些内容。反之亦然。

您可以通过搜索D newsgroup archives或在新闻组中询问,搜索数字地图网站,D wiki等来找到大量答案。文档本身可能不会更新为但是好几年了。