1人でゲームが作れるように修行します。2 (487レス)
前次1-
抽出解除 レス栞

90
(2): 名前は開発中のものです。 [sage] 2010/09/17(金) 22:40:10 ID:pd/LBTti(2/2) AAS
上の補足

コンストラクタを定義していなければ、
オブジェクト.構造体変数名 = {848,544,0};
のような代入もできる。
91
(1): 名前は開発中のものです。 [sage] 2010/09/17(金) 23:57:56 ID:iQtTD6+I(1) AAS
>>90
それは初期化時のみじゃない?

struct vector{
int x,y,z;
};

void main(){
vector a = { 1,2,3 }; //ok
a = { 4,5,6 }; //エラー
}
92
(2): SGGK ◆6pZCoAtaxk [sage] 2010/09/18(土) 01:00:44 ID:wU0YURT9(1) AAS
ありがとうございます。今日は調べるだけで終了でした…。
>>88
たしかにバグの原因がCとC++の違いだと思い込んでしまうと他の原因の可能性を見落としやすくなりそうなので気をつけます。
>>89
今のソースではベクトル関係がクラスでなく構造体で表現されていてコンストラクタについてはまだ考えてませんでした。
バグが結局取り切れなかった場合、勉強しなおしてベクトル関係もクラス化する最終手段に挑戦してみようと思います。
>>90
コンストラクタの定義はしてないのですが、何故かエラーになってしまうので、
今は以下に書くとりあえず的なやり方でエラーを回避してます。
>>91
「構造体の初期化」で検索したところ、とあるサイトにそのような感じの
「構造体変数の初期化は、変数の宣言時には常に行うことが出来る点に注意しよう。」とあり、これを参考に以下のようにしてます。

ベクトル関係のヘッダファイルで
struct Vector3{float x,y,z;};

あるオブジェクトの初期化用関数の内部では昨日のやり方から少し変更して、

Vector3 a1={848,544,0};
fp.xy(←これは昨日書いていたオブジェクト.構造体変数名の事)=a1;

と書いてもバグが出ないのでこれでやってみようと思います。
今日は調べただけなので、バグは減ってないけど、全部取れるまで頑張ってみます。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.561s*