2008年9月10日水曜日

PascalとC++の違い(第一回)

弾幕生成のコードを書いているうちに気づいたことを1つ。

1.三角関数の引数として渡す値の型
Pascal(以下P):cos(hoge)のhogeに代入する値は、integer型でもExtended型でも可。整数の値を入力しても、エラーは起きない。
C++(以下C):cos(hoge)のhogeに代入する値はDouble・long Double・float型のいずれかでなければならない。整数値を代入した場合はエラーが起きる。(cos(hoge*1.0)と書いておけば、hogeにint型の整数値も代入できるようになる)

これはcos関数に限らず、三角関数全て(sin、cos、tan)においても同じことが言える。

追記:C++で三角関数を使用する場合、math.hをインクルードする必要がある。

2 件のコメント:

BlackMan さんのコメント...

#define Cos(x) cos((float)x)
と定義しておくとCos(x)のxにどんな型を入れても構わなくなる。

Moneto さんのコメント...

そういう方法も有ったのですね。もっとC++を勉強しないと……