| View previous topic :: View next topic |
| Author |
Message |
Thomas Thiele Guest
|
Posted: Thu Jan 25, 2007 10:35 pm Post subject: Eine Frage zu casts |
|
|
Hallo,
gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
?
Also ist der function-style-cast aquivalent zum static-cast?
Gruß Thomas |
|
| Back to top |
|
 |
Thomas Maeder Guest
|
Posted: Fri Jan 26, 2007 4:35 am Post subject: Re: Eine Frage zu casts |
|
|
"Thomas Thiele" <jana.luetz (AT) gmx (DOT) de> writes:
| Quote: | gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
?
Also ist der function-style-cast aquivalent zum static-cast?
|
In diesem Fall ja. |
|
| Back to top |
|
 |
Daniel Albuschat Guest
|
Posted: Fri Jan 26, 2007 1:47 pm Post subject: Re: Eine Frage zu casts |
|
|
Thomas Thiele wrote:
| Quote: | gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
Also ist der function-style-cast aquivalent zum static-cast?
|
In deinem konkreten Beispiel ja.
Allgemein ist es so, dass der function-style-cast mehr macht
als ein static_cast. Er kann beispielsweise das const von
einem Pointer wegcasten, was ein static_cast nicht macht.
Soweit ich weiß, ist ein function-style-cast äquivalent zu
einem C-Style-Cast.
MfG,
Daniel |
|
| Back to top |
|
 |
R. Schneeweiß Guest
|
Posted: Wed Jan 31, 2007 4:20 am Post subject: Re: Eine Frage zu casts |
|
|
"Thomas Thiele" <jana.luetz (AT) gmx (DOT) de> schrieb im Newsbeitrag
news:1169742911.335774.279940 (AT) v33g2000cwv (DOT) googlegroups.com...
| Quote: | Hallo,
gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
?
Also ist der function-style-cast aquivalent zum static-cast?
Gruß Thomas
|
In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>. Er deckt alles ab, was static_cast<>, const_cast<> und
reinterpret_cast<> bewirken.
Es ist der Vorteil der genannten Cast-Operatoren, dass man genauer
ausdrückt, was man mit dem Cast
bezweckt.
Ralf
http://www.oop-trainer.de |
|
| Back to top |
|
 |
Thomas Thiele Guest
|
Posted: Wed Jan 31, 2007 7:12 pm Post subject: Re: Eine Frage zu casts |
|
|
R. Schneeweiß schrieb:
| Quote: | In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>.
|
Schon klar. Also ist der funktionstyle cast dasselbe wie der c-cast
nur in anderer Schreibweise? |
|
| Back to top |
|
 |
Stefan Reuther Guest
|
Posted: Thu Feb 01, 2007 4:49 pm Post subject: Re: Eine Frage zu casts |
|
|
Thomas Thiele wrote:
| Quote: | R. Schneeweiß schrieb:
In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>.
Schon klar. Also ist der funktionstyle cast dasselbe wie der c-cast
nur in anderer Schreibweise?
|
Exakt so ist er definiert.
Stefan |
|
| Back to top |
|
 |
Thomas Thiele Guest
|
Posted: Thu Feb 01, 2007 9:44 pm Post subject: Re: Eine Frage zu casts |
|
|
Stefan Reuther schrieb:
| Quote: | Also ist der funktionstyle cast dasselbe wie der c-cast nur in anderer Schreibweise?
Exakt so ist er definiert.
|
Sag das doch gleich. Das wollte ich wissen.
(ok, ich hätte päziser fragen müssen. mein Fehler.) |
|
| Back to top |
|
 |
James Kanze Guest
|
Posted: Fri Feb 02, 2007 7:13 pm Post subject: Re: Eine Frage zu casts |
|
|
Stefan Reuther wrote:
| Quote: | Thomas Thiele wrote:
R. Schneeweiß schrieb:
In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>.
Schon klar. Also ist der funktionstyle cast dasselbe wie der c-cast
nur in anderer Schreibweise?
Exakt so ist er definiert.
|
Nicht genau. Laut der Norm, angegeben:
struct S { S() ; S( int, double ) ; } ;
sind »S()« und »S(2,3.14)« auch funktionstyle Cast:-). (Dagegen
ist ein funktionstyle Cast mit genau einem Parameter laut
Definition dasselbe als ein C-Style Cast. Wie du gesagt hast.)
--
James Kanze (GABI Software) email:james.kanze (AT) gmail (DOT) com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34 |
|
| Back to top |
|
 |
R. Schneeweiß Guest
|
Posted: Tue Feb 27, 2007 5:26 am Post subject: Re: Eine Frage zu casts |
|
|
"Thomas Thiele" <jana.luetz (AT) gmx (DOT) de> schrieb im Newsbeitrag
news:1169742911.335774.279940 (AT) v33g2000cwv (DOT) googlegroups.com...
| Quote: | Hallo,
gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
?
Also ist der function-style-cast aquivalent zum static-cast?
Gruß Thomas
|
In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>. Er deckt alles ab, was static_cast<>, const_cast<> und
reinterpret_cast<> bewirken.
Es ist der Vorteil der genannten Cast-Operatoren, dass man genauer
ausdrückt, was man mit dem Cast
bezweckt.
Ralf
http://www.oop-trainer.de |
|
| Back to top |
|
 |
R. Schneeweiß Guest
|
Posted: Tue Feb 27, 2007 5:26 am Post subject: Re: Eine Frage zu casts |
|
|
"Thomas Thiele" <jana.luetz (AT) gmx (DOT) de> schrieb im Newsbeitrag
news:1169742911.335774.279940 (AT) v33g2000cwv (DOT) googlegroups.com...
| Quote: | Hallo,
gibt es einen Unterschied zwischen:
double d = 4.56;
int i = int(d);
und
double d = 4.56;
int i = static_cast<int>(d);
?
Also ist der function-style-cast aquivalent zum static-cast?
Gruß Thomas
|
In diesem Beispiel ist es kein Unterschied. Ansonsten deckt der
function-style-cast mehr ab als der
static_cast<>. Er deckt alles ab, was static_cast<>, const_cast<> und
reinterpret_cast<> bewirken.
Es ist der Vorteil der genannten Cast-Operatoren, dass man genauer
ausdrückt, was man mit dem Cast
bezweckt.
Ralf
http://www.oop-trainer.de |
|
| Back to top |
|
 |
|