[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 10/30 03:13 / Filesize : 322 KB / Number-of Response : 1026
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C++相談室 part129



1 名前:デフォルトの名無しさん(ワッチョイ dfcf-HvS5) mailto:sage [2017/01/09(月) 14:49:27.56 ID:p96WJVyd0.net]
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512

C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。

前スレ
C++相談室 part128
echo.2ch.net/test/read.cgi/tech/1480172629/

このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.100【環境依存OK】
echo.2ch.net/test/read.cgi/tech/1478440682/

■長いソースを貼るときはここへ。■
 codepad.org/
 https://ideone.com/

[C++ FAQ]
https://isocpp.org/wiki/faq/
www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured

9 名前:デフォルトの名無しさん (ワッチョイ fb04-nASw) [2017/01/09(月) 22:45:37.43 ID:cNtoCjW40.net]
グローバルなstatic変数は(コンパイル単位が違うと)初期化タイミングが不定だから使うな
みたいな話がありますが、これはクラスメンバのstatic変数でも同じでしょうか。

やはり定番のローカルなstatic変数の参照を返すのがベストでしょうか?

10 名前:デフォルトの名無しさん (ワッチョイ df8e-KLRm) mailto:sage [2017/01/09(月) 23:42:53.87 ID:YmMsaSRh0.net]
static int a = f();
 ↓
static int &get_unko() {
 static int a = f();
 return a;
}

問題解決になるとは到底思えない
ちなみにクラスの静的メンバーでも同じ

11 名前:デフォルトの名無しさん (ワッチョイ 1b7b-p/5D) [2017/01/10(火) 00:09:01.54 ID:qNfJPVUt0.net]
>>9
ベストは静的な寿命をもつ変数が別の静的な寿命を持つ変数を参照するような設計にしないこと
やむを得ずそうなる場合はローカルなstatic変数の参照を返す方法がベター
しかしそれも構築は初めて呼ばれた時になるが、破棄の順が不定なのは変わらずだから注意

12 名前:デフォルトの名無しさん (ワッチョイ dfcf-IbiL) mailto:sage [2017/01/10(火) 00:34:11.81 ID:kCG+Vhkl0.net]
>>11
破棄準は構築と逆順になるよ。 [basic.start.term]

13 名前:デフォルトの名無しさん (ワッチョイ 1b7b-p/5D) [2017/01/10(火) 01:22:55.56 ID:qNfJPVUt0.net]
>>12
ホンマやね
メモリ上の配置と関係なしに構築した順番覚えてるのな。

14 名前:デフォルトの名無しさん (ワッチョイ 0f33-Flmg) [2017/01/10(火) 02:41:10.58 ID:YALu2HFR0.net]
しかし、関数内で定義したstatic変数ってどうやって「一度のみ初期化」を実現してるんだろう?
規格上の明記は無いよね?

もし、コード上に初期化フラグ的なものを保持して毎回判定してるのだとしたら、単純なグローバル変数よりアクセス遅くなるのかな?






[ 続きを読む ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<322KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef