当前位置:  开发笔记 > 编程语言 > 正文

C++"命名参数成语"与Boost ::参数库

如何解决《C++"命名参数成语"与Boost::参数库》经验,为你挑选了3个好方法。

我查看了Named Parameter Idiom和Boost :: Parameter库.每个人有什么优势?是否有充分的理由总是选择其中一个,或者在某些情况下每个人都可能比另一个好(如果是的话,在什么情况下)?



1> Robert Gould..:

实现命名参数成语非常简单,几乎和使用Boost :: Parameter一样简单,因此可归结为一个主要观点.

- 你有增强依赖吗?如果不这样做,Boost ::参数不够特别,不值得添加依赖项.

就个人而言,我从未在生产代码中看到过Boost ::参数,100%的时候它是命名参数的自定义实现,但这不一定是件好事.



2> Ferruccio..:

通常,我是Boost的忠实粉丝,但我不会使用Boost.Parameter库有以下几个原因:

    如果您不知道发生了什么,那么调用看起来就像是在调用函数之前为调用函数的作用域中的变量赋值.这可能非常令人困惑.

    首先需要设置太多的样板代码才能进行设置.


模板为语言增添了很多力量.我认为你不能对命名参数说同样的话.仅仅因为某些事情很复杂,并不意味着它很有用.
通过同样的推理,我们应该从C++中删除模板,因为它们很复杂且令人困惑.它被称为"学习"

3> 小智..:

另一点,虽然我从未使用过命名参数成语,但我使用了Boost参数来定义最多20个可选参数.而且,我的编译时间很疯狂.过去需要几秒钟,现在需要30秒.如果你有一个使用你使用boost参数编写的一个小应用程序的东西库,这就加起来了.当然,我可能会错误地实现它,但我希望这会改变,因为除此之外,我真的很喜欢它.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有