问题标签 [boost-implicit-cast]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - What is the difference between static_cast and Implicit_cast?
What is implicit_cast? when should I prefer implicit_cast rather than static_cast?
c++ - 为什么使用implicit_cast(int) 而不是 static_cast(整数)?
我在开源网络库mudu中看了一些代码,发现作者使用implicit_cat<size_t>(int)
而不是static_cast<size_t>(int)
在很多地方。的定义 implicit_cast
如下:
我能理解评论的意思。这是一个例子:
当涉及到类型层次结构中的向上转换时,implicit_cast
可以检测从类型 From 到类型 To 的转换是否合法,而static_cast
不能检测。但为什么要使用implicit_cast<size_t>(int)
而不是static_cast<size_t>(int)
?
我猜这有两个可能的原因:
implicit_cast
比更有意义static_cast
size_t
依赖于实现,因此implicit_cast
比static_cast
但我不知道哪一个是真的。也许他们两个都是假的。