2011-02-18 59 views
2

我是C++新手。初学者。当我学习C++提供的转换特性时,我想知道为什么Casting特别特别是静态转换。当我们知道需要什么类型的变量时,为什么要施放?为什么投射功能?

回答

1

如果我正确理解你的问题,你在问为什么有一个static_cast运算符在C++。类型转换有助于在类层次结构中移动指针。并且使用static_cast,您可以在类层次关系中下注一个指针。虽然这样的转换并不安全,但在处理它时应该小心。

+0

Mahesh,考虑到这些类,在这里试着再次理解,static_cast只在基本数据类型以外的指针上完成? – Lakshmi 2011-02-18 06:57:18

1

然后你想要,例如,将一种类型转换为另一种类型。说浮动到int。或不同类别的对象(通常是基本vs继承)。有很多不同的例子。你将学会使用它,主要是通过解决一些例子和其他获得东西的经验。

+0

谢谢大卫。我认为你需要做大量的编码来理解实际使用 – Lakshmi 2011-02-18 07:02:03

1

static_cast旨在反转任何隐式转换。如果您隐式转换为void *,那么如果您知道您确实只是反转较早的转换,则可以使用static_cast进行转换。