前スレ
C++相談室 part158
https://mevius.5ch.net/test/read.cgi/tech/1636969758/
探検
C++相談室 part159
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2022/02/19(土) 11:56:42.14ID:kSnJ/KwP969はちみつ餃子 ◆8X2XSCHEME
2022/04/13(水) 13:12:01.75ID:qCcEdGhE970デフォルトの名無しさん
2022/04/13(水) 18:00:26.46ID:m7JtDTD6 >>957
今実機で確認して、インライン化したテンプレートをヘッダーに咥える方法が自分にとって良い事を確認しました!
ありがとうございます。
いちいちスタティック咥えるより良いと思います。
マルチスレッドは使用したことがないのでわかりませんが、なるべき勉強してみたいと思います。
皆さんありがとうございます!
今実機で確認して、インライン化したテンプレートをヘッダーに咥える方法が自分にとって良い事を確認しました!
ありがとうございます。
いちいちスタティック咥えるより良いと思います。
マルチスレッドは使用したことがないのでわかりませんが、なるべき勉強してみたいと思います。
皆さんありがとうございます!
971デフォルトの名無しさん
2022/04/13(水) 18:15:56.73ID:I4ieD//T >>966
std::for_each(vf.begin(),vf.end(),std::mem_fn(&Foo::Func));
または
for (auto &&x : vf) { std::invoke(&Foo::Func, x); }
std::for_each(vf.begin(),vf.end(),std::mem_fn(&Foo::Func));
または
for (auto &&x : vf) { std::invoke(&Foo::Func, x); }
972デフォルトの名無しさん
2022/04/13(水) 18:28:24.44ID:U0E88zpG オマンコハンター チンポマン!
股間の銃を携えて今日もおまんこ狙い撃ち
股間の銃を携えて今日もおまんこ狙い撃ち
973デフォルトの名無しさん
2022/04/13(水) 23:40:49.30ID:grUsXYkY >>971
ラムダが消されてて笑った
ラムダが消されてて笑った
974デフォルトの名無しさん
2022/04/13(水) 23:53:02.59ID:nvVh9cdQ975デフォルトの名無しさん
2022/04/14(木) 07:29:49.75ID:Qd4x1CZh シングルトンは要らない子、とヴァカにしていたが
グローバルなオブジェクトのコンストラの呼び出し順序が翻訳単位を超えた呼び出し順序がまるきり不
定になるというC/C++の仕様を回避するのには有効おと1 mgぐらい考えを新ためた
OSのwrapperを書いて、main()でそれを初期化することにして
グローバルなオブジェクトのコンストラから思わずOSのwrapper経由でログを吐かせようとしたらクラッシュして気づいたから
最初のOSのwrapperの最初の呼び出しでまだ未呼び出しなら初期化したら良い(ビコーン ← まんまシングルトン
main()で初期化することが保証しているから、グローバルなコンストラの中でいきなりスレッドを起こしてそこから
OSのwrapperを呼ぶ、みたいなktgi行為が無い限りこのシングルトンはマルチスレッドの対策が不要
グローバルなオブジェクトのコンストラの呼び出し順序が翻訳単位を超えた呼び出し順序がまるきり不
定になるというC/C++の仕様を回避するのには有効おと1 mgぐらい考えを新ためた
OSのwrapperを書いて、main()でそれを初期化することにして
グローバルなオブジェクトのコンストラから思わずOSのwrapper経由でログを吐かせようとしたらクラッシュして気づいたから
最初のOSのwrapperの最初の呼び出しでまだ未呼び出しなら初期化したら良い(ビコーン ← まんまシングルトン
main()で初期化することが保証しているから、グローバルなコンストラの中でいきなりスレッドを起こしてそこから
OSのwrapperを呼ぶ、みたいなktgi行為が無い限りこのシングルトンはマルチスレッドの対策が不要
976デフォルトの名無しさん
2022/04/14(木) 07:33:43.77ID:Qd4x1CZh 訂正orz、
誤: 最初のOSのwrapperの最初の呼び出しでまだ未呼び出しなら初期化したら良い(ビコーン ← まんまシングルトン
正: 最初のOSのwrapperの最初の呼び出しでまだ未初期化なら初期化したら良い(ビコーン ← まんまシングルトン
誤: 最初のOSのwrapperの最初の呼び出しでまだ未呼び出しなら初期化したら良い(ビコーン ← まんまシングルトン
正: 最初のOSのwrapperの最初の呼び出しでまだ未初期化なら初期化したら良い(ビコーン ← まんまシングルトン
977デフォルトの名無しさん
2022/04/14(木) 08:28:49.07ID:79II+WyL 別にシングルトンじゃなくても単に起動時に初期化して渡せばええやん
978デフォルトの名無しさん
2022/04/14(木) 09:59:18.13ID:wwxSZsaE いや要るでしょシングルトン
何らかのリソースマネージャ作るときとか避けて通れないし
何らかのリソースマネージャ作るときとか避けて通れないし
979デフォルトの名無しさん
2022/04/14(木) 10:35:30.42ID:dlHUY+WK >>977
初期化順序の問題って回避できたっけ?
初期化順序の問題って回避できたっけ?
980デフォルトの名無しさん
2022/04/14(木) 10:40:07.14ID:79II+WyL mainでリソース用意しろという話よ
ライブラリだったら初期化用になんか叩いてもらえ
ライブラリだったら初期化用になんか叩いてもらえ
981デフォルトの名無しさん
2022/04/14(木) 10:47:06.20ID:rsrkTEkU グローバル変数をポインタにしておいてmainでnewとか
friend int main(int, char**); とか?
friend int main(int, char**); とか?
982デフォルトの名無しさん
2022/04/14(木) 10:56:36.07ID:79II+WyL なんでグローバル変数にこだわるんだよ
983デフォルトの名無しさん
2022/04/14(木) 10:58:53.82ID:dlHUY+WK984デフォルトの名無しさん
2022/04/14(木) 15:09:30.09ID:4tVKG4Xu 1個でもグローバルなりがあると
エントリポイントの main よりも前に走るコンストラクタ内部であれこれされる可能性を想定する必要に迫られる と
エントリポイントの main よりも前に走るコンストラクタ内部であれこれされる可能性を想定する必要に迫られる と
985デフォルトの名無しさん
2022/04/15(金) 00:01:53.91ID:he9C7sX7986デフォルトの名無しさん
2022/04/15(金) 00:06:58.93ID:xDiQzMrD mainの実行より前に意味があることしようと思ったらコンパイル時しかなかろうよ
987デフォルトの名無しさん
2022/04/15(金) 00:13:00.39ID:he9C7sX7 >>986の主観の話をしているのではない件について:
988デフォルトの名無しさん
2022/04/15(金) 00:22:10.66ID:xDiQzMrD989デフォルトの名無しさん
2022/04/15(金) 04:08:04.71ID:sm6VHVYM 静的ストレージは実装と心中するプログラム以外マジでやめといたほうがいい
移植性が大幅に低下する
移植性が大幅に低下する
990デフォルトの名無しさん
2022/04/15(金) 04:23:41.78ID:1Y3hD0GJ グローバルやstaticな変数を使用する時は排他制御を必ず行なう
これを厳守していれば使っても大丈夫です
もちろん使わずに済む別の方法がある時は別の方法を取るべきです
これを厳守していれば使っても大丈夫です
もちろん使わずに済む別の方法がある時は別の方法を取るべきです
991デフォルトの名無しさん
2022/04/15(金) 06:36:24.15ID:he9C7sX7 >>988
・任意のユーザーが任意のクラスをグローバル変数として使うことをOSが禁止するわけにはいかない
・クラスのコンストラクタでOS資源を確保することは普通(イベントオブジェクトを確保する等、ハンドルのメンバを有効な値で初期化しようとする
・誰かがグローバル変数のコンストラクタでOSの資源を確保しようとしたら、この場合初期化前のOSのwrapperが呼ばれる
ここまで書かないと>>986がいかにたわごとを言っているかわからないわけ?!
>>990
>グローバルやstaticな変数を使用する時は排他制御を必ず行なう
まあそれはそう。今回排他制御を避けられるのは
>main()で初期化することが保証しているから、グローバルなコンストラの中でいきなりスレッドを起こしてそこから
>OSのwrapperを呼ぶ、みたいなktgi行為が無い限りこのシングルトンはマルチスレッドの対策が不要
というktgi行為が無いことの条件付き。
・任意のユーザーが任意のクラスをグローバル変数として使うことをOSが禁止するわけにはいかない
・クラスのコンストラクタでOS資源を確保することは普通(イベントオブジェクトを確保する等、ハンドルのメンバを有効な値で初期化しようとする
・誰かがグローバル変数のコンストラクタでOSの資源を確保しようとしたら、この場合初期化前のOSのwrapperが呼ばれる
ここまで書かないと>>986がいかにたわごとを言っているかわからないわけ?!
>>990
>グローバルやstaticな変数を使用する時は排他制御を必ず行なう
まあそれはそう。今回排他制御を避けられるのは
>main()で初期化することが保証しているから、グローバルなコンストラの中でいきなりスレッドを起こしてそこから
>OSのwrapperを呼ぶ、みたいなktgi行為が無い限りこのシングルトンはマルチスレッドの対策が不要
というktgi行為が無いことの条件付き。
992デフォルトの名無しさん
2022/04/15(金) 07:35:15.38ID:xDiQzMrD >>991
えっと、つまり、使えるものは使わずにはおれない一族に生まれたということですか?
えっと、つまり、使えるものは使わずにはおれない一族に生まれたということですか?
993デフォルトの名無しさん
2022/04/15(金) 08:15:20.73ID:xhqbcuaF994デフォルトの名無しさん
2022/04/15(金) 08:29:52.88ID:y04/Kx9U 自分で記述するだけならどうとでもなるけど
他人に使ってもらう前提だと
限度はあるにしても色々防護策を講じたくなるのもわかる
他人に使ってもらう前提だと
限度はあるにしても色々防護策を講じたくなるのもわかる
995デフォルトの名無しさん
2022/04/15(金) 08:31:14.00ID:xDiQzMrD モジュールの結合度を評価するのにまず排他がどうとか気にするもんかね?
996デフォルトの名無しさん
2022/04/15(金) 08:40:46.42ID:WMzvufu2 C++相談室 part160
https://mevius.5ch.net/test/read.cgi/tech/1649979572/
https://mevius.5ch.net/test/read.cgi/tech/1649979572/
997デフォルトの名無しさん
2022/04/15(金) 08:43:44.23ID:ZcCJtqdn >>995
それとは独立の問題
並行&並列でも動くことが現代では求められているため
一般的にグローバルやstatic変数の読み書きには排他制御が必ず必要となる
厳密な意味で変数ではなく一度限り初期化される定数のようなものの場合はその初期化が排他制御される保証のみでも大丈夫なだけ
それとは独立の問題
並行&並列でも動くことが現代では求められているため
一般的にグローバルやstatic変数の読み書きには排他制御が必ず必要となる
厳密な意味で変数ではなく一度限り初期化される定数のようなものの場合はその初期化が排他制御される保証のみでも大丈夫なだけ
998デフォルトの名無しさん
2022/04/15(金) 08:44:18.42ID:wykOop5a >>994
シングルトンパターンならコンストラクタをプライベートにするんだから、そもそもグローバル変数として初期化できないんじゃない?
シングルトンパターンならコンストラクタをプライベートにするんだから、そもそもグローバル変数として初期化できないんじゃない?
999デフォルトの名無しさん
2022/04/15(金) 08:44:58.60ID:wykOop5a1000デフォルトの名無しさん
2022/04/15(金) 08:49:06.65ID:xDiQzMrD >>997
グローバル変数批判でまずそれが問題だと思うのはどうかしてるよ
グローバル変数批判でまずそれが問題だと思うのはどうかしてるよ
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 54日 20時間 52分 24秒
新しいスレッドを立ててください。
life time: 54日 20時間 52分 24秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【コメ】やっぱり進次郎のほうがマシ…「コメの値下げは無理」と言い張る農林族の鈴木農水大臣 ★2 [ぐれ★]
- 高市首相の台湾有事答弁「問題ない」50% 「問題があったと思う」25%を大きく上回る 毎日新聞世論調査 ★2 [尺アジ★]
- 【発信国情報】X、プロフィール上に「VPN使用の有無」も表示か… [BFU★]
- 【速報】 中国国営新聞社 「日本はすでに代価を支払った」 中国SNSで1位に 高市総理の発言めぐり ★4 [お断り★]
- 中国の王毅外相、高市首相の台湾巡る答弁は「レッドラインを越えた」 ★2 [どどん★]
- 【相撲】九州場所千秋楽 関脇・安青錦が初優勝 優勝決定戦で豊昇龍破る 所要14場所は史上2位のスピード記録 [ニーニーφ★]
- 競輪実況★1608
- 巨専】ジャイアンツファンフェスタ2025
- とらせん 2
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1809
- こいせん 全レス転載禁止 SHAKARIKI
- 【D専】
- 高市首相、G20で中国念頭に「レアアースを特定国に頼らずアフリカから輸入しましょう!」と提唱し中国を挑発wwwwwwwwwwww [271912485]
- 【📛専】とうふさんすこすこ😊👎スレッド【とうふゲームズ🏡】
- 高尾山、終わる [469534301]
- おさかなさんあつまれえ
- 【悲報高市】中国「我らが台湾侵攻しても日本が邪魔しないことの言質を取ってくるアル」 岡田「仰せの通りに」 [614650719]
- 【画像】高市、ガチで追い詰められる [237216734]
