Windowsゲームプログラミング 質問スレat GAMEDEV
Windowsゲームプログラミング 質問スレ - 暇つぶし2ch336:名前は開発中のものです。
06/11/19 15:16:12 urBRsIAy
>>335
ありがとうございます。漸く理解できました。
ということは、やはりメンバで宣言された時点で初期化も行われているのですね。
参照は初期化が必要と聞いていたのでその点がどうしてもわかりませんでした。
int val = 10;
funk3(val);
//   └─┐引数valの参照としてメンバーのvalが定義される
int funk3(int& val)
{
val = val * 2;
return val;
//この場合return不要とのことですが、記述したままで不都合はありますかね?
//関数の型を維持しておきたいのです。
}

//次にポインタの場合なのですが、
int val = 10;
funk3(&val);
//   └─┐valに参照演算子を使ってアドレスを引数にする。
void funk3(int* pVal) //アドレスはint*型のpValに代入したい。でも*pValって値を格納する式だよね。
{
pVal *= 2;
// それとも *pVal *= 2; ?
// なんか変だ、pValというのはポインタなので、値を代入する場合は*pValに入れる必要がある。
// 最初に宣言した*pValにはアドレスが入っちゃってるんじゃないだろうか。2倍するのは危険じゃないか。
}
funk3(val);で呼び出して、void funk3(int* pVal) に渡すのかな。
funk3(&val);で呼び出して、void funk3(int pVal) で、式中では*pValを使用でいいのかな。
と、このような感じで悩んでおります。
ここが解ればテキストを読み進められそうなので、お願いします。本当に長々と申し訳ありません。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch