12/05/10 13:25:03.44
ありがと。
>>444
型変換くらいならコストも高くないし、変換後の一時変数を持たないってのも確かにアリか…
>>445
すまない、分からなかった。
VBかしら? 元のhogeとどう共存するのか分からないけど、その辺は大丈夫なのかな。
>>446
ほんとに一瞬使うだけなら、それでもいいのかな。型変換したって情報は残らないけど。
448:デフォルトの名無しさん
12/05/11 04:13:27.13
正直、禁止されていてもローカルスコープでは使う
449:445
12/05/11 08:58:39.87
>>447
命名規則にあわせて hogeAsInt や hoge_as_int にして採用してもらうつもりで書いた。
450:デフォルトの名無しさん
12/05/11 10:36:30.91
変数宣言じゃなくて、そういうことかw
451:デフォルトの名無しさん
12/05/11 12:23:04.14
>>449
これいいな
asのおかげで元になるhogeがあるのがわかる
452:デフォルトの名無しさん
12/05/11 12:29:14.18
でもhogeと同値である保証がないなら
毎回変換したほうがバグは少ないかもね
453:デフォルトの名無しさん
12/05/12 09:06:55.49
ハァ?
454:デフォルトの名無しさん
12/05/12 12:09:41.50
DBの列名もここで相談してOK?
455:デフォルトの名無しさん
12/05/12 12:38:08.61
>>452
保証がない変数使って、バグがどうしたって?
456:デフォルトの名無しさん
12/05/12 13:07:08.38
>>454
過去に何度もあった
457:デフォルトの名無しさん
12/05/12 15:16:26.44
その変数が「名前が似てるだけのただのコピー」だと理解してないやつが触ったら
どんなコードに書き換えられるかわからんぞって話
わかんねぇだろうなぁ
458:デフォルトの名無しさん
12/05/12 15:21:51.46
いいよ別にそんなことを議論スレじゃないから
459:デフォルトの名無しさん
12/05/12 15:29:13.12
>>457
> どんなコードに書き換えられるかわからんぞって話
馬鹿が触ればあたりまえ。
まあ、俺の周りには >>457 みたいな馬鹿は居ないからいいけど。
460:デフォルトの名無しさん
12/05/12 16:04:52.78
スレッドセーフとか考えたこともなさそうなお仲間だな
461:デフォルトの名無しさん
12/05/12 16:13:43.28
>>460 が一番難しいと思ってる言葉 = スレッドセーフ (w
462:デフォルトの名無しさん
12/05/12 16:15:17.58
あのな
値をコピーしたあとで別の「スレッド」に元データ書き換えられたらどうするんだっていってんだよ
おまえらほんとレベル低いな
463:デフォルトの名無しさん
12/05/12 16:18:01.88
それスレッドセーフと関係ないし。
お前が言ってるのは、
> 値をコピーしたあとで別の「サブルーチン」で元データ書き換えられたらどうするんだっていってんだよ
と同じ。
馬鹿すぎ。
464:デフォルトの名無しさん
12/05/12 23:07:39.00
>>462 その問題は「毎回変換」したら解決するものじゃないよね。
465:デフォルトの名無しさん
12/05/13 21:37:28.84
class HogeHolder {
int hoge
void Do() {
VerifyString(IntToString(this->hoge)) // ①
LogOutputString(IntToString(this->hoge)) // ②
DrawString(IntToString(this->hoge)) // ③
}
}
条件: 関数①・②・③の引数として同じ値を渡す
イベント: 途中でthis->hogeが別スレッドに書き換えられる
イベントの発生により、条件が保てなくなる
void Do() {
Thread.Lock()
const string sHoge(IntToString(this->hoge)
Thread.Unlock()
VerifyString(IntToString(sHoge))
LogOutputString(IntToString(sHoge))
DrawString(IntToString(sHoge))
}
こうすることでイベントが発生しても条件が保てる
で、上記の変数sHogeの命名規則が今の課題
466:デフォルトの名無しさん
12/05/13 21:46:05.33
修正: 引数としてthis->hogeのコピーを渡すだろうし、Thread.Lock()とかは余計だった
>>452
>>1
あとスレタイ
467:デフォルトの名無しさん
12/05/14 00:02:02.37
あ、まだ間違えてる。
二つ目のDo関数は
void Do() {
// Thread.Lock()
const string sHoge(IntToString(this->hoge)
// Thread.Unlock()
VerifyString(sHoge)
LogOutputString(sHoge)
DrawString(sHoge)
}
だな