前スレ
C++相談室 part156
https://mevius.5ch.net/test/read.cgi/tech/1621389313/
探検
C++相談室 part157
■ このスレッドは過去ログ倉庫に格納されています
2021/08/09(月) 10:57:31.60ID:JaaB5Egp
151デフォルトの名無しさん
2021/08/20(金) 20:12:20.52ID:BMARPdQo >>150
じゃあそのうち「関数はレガシーな書き方なので関数オブジェクトを使用するようにしましょう」とか言われるようになるの?
じゃあそのうち「関数はレガシーな書き方なので関数オブジェクトを使用するようにしましょう」とか言われるようになるの?
152デフォルトの名無しさん
2021/08/21(土) 00:32:59.41ID:E2GGZp0E153デフォルトの名無しさん
2021/08/21(土) 00:37:37.24ID:E2GGZp0E154デフォルトの名無しさん
2021/08/21(土) 00:45:38.19ID:E2GGZp0E あ、すまんラムダじゃなくて関数オブジェクトか
確かにタイプ数くらいしか思いつかんけど
テンプレートは既に使えるのでは?関数テンプレートに出来て関数オブジェクトに出来ないテンプレートの使い方あったっけ
確かにタイプ数くらいしか思いつかんけど
テンプレートは既に使えるのでは?関数テンプレートに出来て関数オブジェクトに出来ないテンプレートの使い方あったっけ
155デフォルトの名無しさん
2021/08/21(土) 10:46:43.63ID:+K/WXdke156デフォルトの名無しさん
2021/08/21(土) 12:15:51.53ID:t0h3aTQf157デフォルトの名無しさん
2021/08/21(土) 13:42:38.53ID:E2GGZp0E クラステンプレート内の普通のoperator ()だとそうだね
operator ()がテンプレートの場合ならほぼ関数テンプレートと同じ事出来るとは思うけど
文法上、明示的にテンプレート引数指定する際、関数と共通の書き方には出来ないな・・
operator ()がテンプレートの場合ならほぼ関数テンプレートと同じ事出来るとは思うけど
文法上、明示的にテンプレート引数指定する際、関数と共通の書き方には出来ないな・・
158デフォルトの名無しさん
2021/08/21(土) 20:47:50.56ID:7GAoG1Iq Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています
Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しでView types参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます
Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ
なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
Nimの実験的特徴
著者: アンドレアス・ルンプ
バージョン: 1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html
Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、Cのソースコードを吐き出せるのでC言語でリモートワークされ
ている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる
「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています
Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しでView types参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます
Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ
なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
Nimの実験的特徴
著者: アンドレアス・ルンプ
バージョン: 1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html
Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、Cのソースコードを吐き出せるのでC言語でリモートワークされ
ている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる
「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
159デフォルトの名無しさん
2021/08/21(土) 22:35:53.53ID:o/sUihIV 質問です。
std::array ary = { 1, 2 };
↑の{}で初期化すると、
要素数を自動推論できるようにするにはどう実装すればいいんでしょう?
std::array ary = { 1, 2 };
↑の{}で初期化すると、
要素数を自動推論できるようにするにはどう実装すればいいんでしょう?
160デフォルトの名無しさん
2021/08/21(土) 22:55:48.18ID:+FOhqLVw161デフォルトの名無しさん
2021/08/22(日) 01:17:33.04ID:maGRuunL >>155
食ったところで飲みこまずにペッペッて吐き出すだろ
食ったところで飲みこまずにペッペッて吐き出すだろ
162デフォルトの名無しさん
2021/08/22(日) 04:31:26.04ID:Roj0wExz g++ -std=c++17
163デフォルトの名無しさん
2021/08/22(日) 12:59:29.57ID:0Cz6ueFz Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています
Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます
Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ
なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
Nimの実験的特徴 バージョン1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html
第二プログラミング言語として Rust はオススメしません Nim をやるのです
https://wolfbash.hateblo.jp/entry/2017/07/30/193412
Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる
「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています
Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます
Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ
なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
Nimの実験的特徴 バージョン1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html
第二プログラミング言語として Rust はオススメしません Nim をやるのです
https://wolfbash.hateblo.jp/entry/2017/07/30/193412
Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる
「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
164デフォルトの名無しさん
2021/08/22(日) 18:45:30.76ID:gNvESTNy std::chrono::time_point::time_since_epoch()が返すエポックタイムの原点はいつですか?
もし具体的に規定されていないとしても、
ミリ秒パートが0であることは保証されていますか?
もし具体的に規定されていないとしても、
ミリ秒パートが0であることは保証されていますか?
165デフォルトの名無しさん
2021/08/22(日) 19:20:25.99ID:gNvESTNy ある意味自己解決しますたorz
https://cpprefjp.github.io/reference/chrono/system_clock.html
>C++17 以前の場合、system_clock のエポックがどの時間を指しているかは未規定だが、ほとんどの処理系は UNIX 時間(1970年1月1日0時0分0秒)を指している
>C++20 以降の場合、system_clock のエポックは必ず UNIX 時間(1970年1月1日0時0分0秒)を指す
しかし(特にC++17以前において)ミリ秒パートが0が保証されているのかどうかがはっきりしませんぬ、
https://cpprefjp.github.io/reference/chrono/system_clock.html
>C++17 以前の場合、system_clock のエポックがどの時間を指しているかは未規定だが、ほとんどの処理系は UNIX 時間(1970年1月1日0時0分0秒)を指している
>C++20 以降の場合、system_clock のエポックは必ず UNIX 時間(1970年1月1日0時0分0秒)を指す
しかし(特にC++17以前において)ミリ秒パートが0が保証されているのかどうかがはっきりしませんぬ、
166デフォルトの名無しさん
2021/08/22(日) 19:28:39.82ID:VeL/IzCV 生年月日をUNIX時間で表現できないオッサンはこのスレにどのくらいいるの?
167デフォルトの名無しさん
2021/08/22(日) 21:27:04.43ID:gNvESTNy 生年月日ならミリ秒まで言える必要は無いが
ログの時刻を極力正確に(WindowsのGetLocalTime()と同じ時刻で)記録したいのでつ∀`;)
ログの時刻を極力正確に(WindowsのGetLocalTime()と同じ時刻で)記録したいのでつ∀`;)
168デフォルトの名無しさん
2021/08/23(月) 04:13:32.16ID:F733kpwr 1970年以前生まれの50代以上のオッサン
169デフォルトの名無しさん
2021/08/23(月) 16:50:49.24ID:Rrt4HCug B.C.
A.D.
B.E.
A.D.
B.E.
170デフォルトの名無しさん
2021/08/23(月) 22:05:26.78ID:xWEF4I0D B.E.って何ですか
UCとSEとかRCとかじゃないの
UCとSEとかRCとかじゃないの
171デフォルトの名無しさん
2021/08/23(月) 22:52:48.51ID:xWEF4I0D ていうかsystem_clockはC++17以前からtime_tと相互変換できるのに(system_clock::from_time_t()、system_clock::to_time_t())、
エポックがどの時間を指しているかは未規定とかおかしくね↑?
エポックがどの時間を指しているかは未規定とかおかしくね↑?
172デフォルトの名無しさん
2021/08/23(月) 23:20:43.35ID:AuTnTHJo 別におかしくない
変換時にエポックの差の分ずらせばいいだけだろ
変換時にエポックの差の分ずらせばいいだけだろ
173デフォルトの名無しさん
2021/08/23(月) 23:31:13.03ID:sPTJEjpv そんなことよりなんでtime_tは符号なしなん?
64bit拡張するときに符号ありにしとけば166みたいな煽りを受けずにすんだのに
64bit拡張するときに符号ありにしとけば166みたいな煽りを受けずにすんだのに
174デフォルトの名無しさん
2021/08/24(火) 00:03:00.26ID:24MephMZ 符号なし使うのは総じてセンスないよね
175デフォルトの名無しさん
2021/08/24(火) 07:17:43.25ID:NEyNeI43 符号付き整数はwrap aroundしたときの挙動が処理系依存か何かだったはず……
ハードウェア例外を生じるやつがあるらしい
ハードウェア例外を生じるやつがあるらしい
176デフォルトの名無しさん
2021/08/24(火) 07:52:57.66ID:4Ohx7QuI177デフォルトの名無しさん
2021/08/24(火) 08:21:39.19ID:NErefsYh >>175
オーバーフローしたときにラップアラウンドさせる使い方が数値計算としては特殊だからねぇ。
オーバーフローしたときにラップアラウンドさせる使い方が数値計算としては特殊だからねぇ。
178デフォルトの名無しさん
2021/08/24(火) 15:27:02.85ID:WZMj7UxV >>167
ntp使え
ntp使え
179デフォルトの名無しさん
2021/08/24(火) 17:48:36.53ID:DexxKsi1180デフォルトの名無しさん
2021/08/24(火) 22:08:27.39ID:OPjw/0cg >>160
なるほど!ありがとうございます
なるほど!ありがとうございます
181167
2021/08/25(水) 00:50:22.37ID:MXKFEwSS182デフォルトの名無しさん
2021/08/25(水) 07:34:23.44ID:VHSVWUHA 30年も猶予があったのにな
183デフォルトの名無しさん
2021/08/25(水) 10:43:26.33ID:M5WZn8fZ ヒトラー「2036年、人類と云われる者は居なくなっている」
184デフォルトの名無しさん
2021/08/26(木) 16:49:35.75ID:WPRv8+9f 関東大震災だって100年も猶予があっても何もしない國ですし
185デフォルトの名無しさん
2021/08/26(木) 21:09:02.54ID:xnTAPql6 色々やってるぞ
庶民を助ける政策をやってないだけで
庶民を助ける政策をやってないだけで
186デフォルトの名無しさん
2021/08/27(金) 17:50:19.96ID:BFKMFKNN https://twitter.com/cpp_akira/status/1430779310885859330
最近はC++の発表資料を公開すると「Rustでいいじゃん」というコメントがたくさんつくのか…。
Rustへの言及とか一文字も書いてないのに。
普及活動だと思うけど、さすがに嫌がらせチックに見える。
https://twitter.com/moriyoshit/status/1430795812552863744
C++の件に限らず、旧来からある言語の長所短所を理解せずに、
表面的に新言語を推す発言を見ると、
果たして当人は新しい言語の方も理解できているのだろうか、
という疑念をもってしまう...
https://twitter.com/5chan_nel (5ch newer account)
最近はC++の発表資料を公開すると「Rustでいいじゃん」というコメントがたくさんつくのか…。
Rustへの言及とか一文字も書いてないのに。
普及活動だと思うけど、さすがに嫌がらせチックに見える。
https://twitter.com/moriyoshit/status/1430795812552863744
C++の件に限らず、旧来からある言語の長所短所を理解せずに、
表面的に新言語を推す発言を見ると、
果たして当人は新しい言語の方も理解できているのだろうか、
という疑念をもってしまう...
https://twitter.com/5chan_nel (5ch newer account)
187デフォルトの名無しさん
2021/08/27(金) 19:27:10.45ID:wbifwX7a >>186
Rustはいらんけど、制約を強化してコンパイルエラーを増やしたc++--は欲しいなぁ。
スライシングはすべてコンパイルエラー、ダウンキャストはメンバー関数とフレンド関数のみ使用可能
new deleteはメンバー関数とフレンド関数のみ使用可能(global operator new/deleteは廃止)
といったメモリ周りの制約強化は欲しい。
Rustはいらんけど、制約を強化してコンパイルエラーを増やしたc++--は欲しいなぁ。
スライシングはすべてコンパイルエラー、ダウンキャストはメンバー関数とフレンド関数のみ使用可能
new deleteはメンバー関数とフレンド関数のみ使用可能(global operator new/deleteは廃止)
といったメモリ周りの制約強化は欲しい。
188デフォルトの名無しさん
2021/08/28(土) 14:03:18.97ID:dCOU+NEa Rustを使って欲しいなら、そう言えばいいのに
人のすることを小馬鹿にするような態度で来るから敵と見られるんだよ
コミュ障にも程がある
人のすることを小馬鹿にするような態度で来るから敵と見られるんだよ
コミュ障にも程がある
189デフォルトの名無しさん
2021/08/28(土) 18:35:03.00ID:iJLWqDs6 インテルコンパイラの-fastには-staticが含まれてるけど、なんでスタティックリンクは速いの?
190デフォルトの名無しさん
2021/08/28(土) 18:49:01.71ID:Ovc44+68 ライブラリ使うときのロードの手間がなくなるからね
191はちみつ餃子 ◆8X2XSCHEME
2021/08/28(土) 23:41:54.59ID:V8MBAFoh スタティックリンクにすると最適化の情報が増えるというのもあると思う。
C/C++ では翻訳単位ごとにコンパイルしてからリンクするという工程を踏むから、
コンパイル時には他の翻訳単位の情報を知らず、他の翻訳単位の情報を利用した
最適化が出来なかった。
今では LTO が当たり前になって、リンク時にあらためてコンパイラに戻して最適化
させる仕組みがあるんだけど、バイナリ自体が別物だとその仕組みを使えない。
C/C++ では翻訳単位ごとにコンパイルしてからリンクするという工程を踏むから、
コンパイル時には他の翻訳単位の情報を知らず、他の翻訳単位の情報を利用した
最適化が出来なかった。
今では LTO が当たり前になって、リンク時にあらためてコンパイラに戻して最適化
させる仕組みがあるんだけど、バイナリ自体が別物だとその仕組みを使えない。
192デフォルトの名無しさん
2021/08/29(日) 13:13:16.45ID:h29TClHM std::threadってスタックサイズを指定できないってマジ?
仮想メモリを使えない組み込み用途だとどうすんじゃ……
仮想メモリを使えない組み込み用途だとどうすんじゃ……
193デフォルトの名無しさん
2021/08/29(日) 13:20:14.34ID:kSqJuAzn native_handle()関数で環境に応じたスレッドハンドル(linuxならpthread)を取得できるから、スタックサイズを設定するところだけ環境ごとに用意して切り替えればいいよ
194デフォルトの名無しさん
2021/08/29(日) 13:28:41.66ID:h29TClHM Windowsみたいにスレッドハンドルを生成したときはスタックサイズ指定済のとき、みたいな
組み込み用OSがあったらどうすんじゃ……
組み込み用OSがあったらどうすんじゃ……
195デフォルトの名無しさん
2021/08/29(日) 13:46:08.60ID:h29TClHM とわいえμITRONのcre_tsk()は
>cre_tsk でスタック領域を明示しない場合のタスクのスタックや割込みハンドラ/割込みサー
>ビスルーチンのスタックは、OS が用意する「スタック用メモリ」から割り当てられます。
>スタック用メモリのサイズを定義する STKMSZ の標準値は 0 で、この場合、main 関数が使って
>いる処理系のデフォルトのスタック領域(スタックセクション)を、OS のスタック用メモリとし
>ます。この場合の実際のスタックサイズは、リンカでのセクション設定とスタートアップルー
>チンでの初期スタックポインタ値で決まります。
みたいなことが書いてある
C/C++界隈はみんな頭おかしい……
>cre_tsk でスタック領域を明示しない場合のタスクのスタックや割込みハンドラ/割込みサー
>ビスルーチンのスタックは、OS が用意する「スタック用メモリ」から割り当てられます。
>スタック用メモリのサイズを定義する STKMSZ の標準値は 0 で、この場合、main 関数が使って
>いる処理系のデフォルトのスタック領域(スタックセクション)を、OS のスタック用メモリとし
>ます。この場合の実際のスタックサイズは、リンカでのセクション設定とスタートアップルー
>チンでの初期スタックポインタ値で決まります。
みたいなことが書いてある
C/C++界隈はみんな頭おかしい……
196デフォルトの名無しさん
2021/08/29(日) 13:55:46.65ID:h29TClHM ゴメ勘違いcre_tsk()(IDがOSが自動割り当てのやつはacre_tsk())は
第2引数に与えるT_CTSK構造体でタスクごとにスタックサイズを指定できたわ;;;
なんでstd::threadではできないんじゃ……
第2引数に与えるT_CTSK構造体でタスクごとにスタックサイズを指定できたわ;;;
なんでstd::threadではできないんじゃ……
197デフォルトの名無しさん
2021/08/29(日) 14:18:20.52ID:vSvS+48a コイツ前スレでも連レスしてたムーブ全く理解してないバカだよね?
NGしたいからトリップつけてください
NGしたいからトリップつけてください
198デフォルトの名無しさん
2021/08/29(日) 14:25:04.60ID:x8xWTwL3199デフォルトの名無しさん
2021/08/29(日) 14:30:52.45ID:AWkeWwKB >>196
ほんと組み込み屋は馬鹿だな
ほんと組み込み屋は馬鹿だな
200デフォルトの名無しさん
2021/08/29(日) 16:52:45.64ID:h29TClHM201デフォルトの名無しさん
2021/08/29(日) 16:54:56.72ID:h29TClHM もっとも天才の漏れは答えにたどりついたがな
ムーブコンの実装がコピコンの実装より効率的である保証が無い以上、
置き換え可能なケースであってもコピコンからムーブコンへの機械的置き換えは正当化されない
ムーブコンの実装がコピコンの実装より効率的である保証が無い以上、
置き換え可能なケースであってもコピコンからムーブコンへの機械的置き換えは正当化されない
202デフォルトの名無しさん
2021/08/30(月) 14:34:41.72ID:jKIf8Vzq 天才のインフレ
203デフォルトの名無しさん
2021/09/01(水) 16:43:13.53ID:Uxp79PtR Rustみたいにコンパイル時にいちいち参照のチェックするんじゃなくて
C++で最終的に完成したバイナリに対してメモリサニタイザーを一回動かす
ってのではだめな理由ある?
C++で最終的に完成したバイナリに対してメモリサニタイザーを一回動かす
ってのではだめな理由ある?
204デフォルトの名無しさん
2021/09/01(水) 20:16:57.41ID:dG55Jwur >>203 動かしたフロー以外のフローについて不安が残るし、サニタイザーの精度がどれほどかという問題もありそう。
205はちみつ餃子 ◆8X2XSCHEME
2021/09/01(水) 23:35:30.93ID:3mB0e8fG >>203
ものによって賢さの程度が違うから一概には言えないけど
基本的にはサニタイザは実際に起こった問題を検出するものなので
入力値次第で問題が有ったりなかったりするようなケースを検出できなかったり、
言語仕様上で未定義なものがたまたま問題ないアクセスになってしまうようなケースも
検出できないかもしれない。
問題が起こっていて再現条件が分かっているときに検証するツール、つまりデバッグ用のツール
としてはサニタイザは有用だし、ごく基本的なテストツールとしても使えるけど、
Rust のライフタイムチェックほど網羅的ではない。
ものによって賢さの程度が違うから一概には言えないけど
基本的にはサニタイザは実際に起こった問題を検出するものなので
入力値次第で問題が有ったりなかったりするようなケースを検出できなかったり、
言語仕様上で未定義なものがたまたま問題ないアクセスになってしまうようなケースも
検出できないかもしれない。
問題が起こっていて再現条件が分かっているときに検証するツール、つまりデバッグ用のツール
としてはサニタイザは有用だし、ごく基本的なテストツールとしても使えるけど、
Rust のライフタイムチェックほど網羅的ではない。
206デフォルトの名無しさん
2021/09/02(木) 05:18:49.53ID:90/tsZBA 一言でまとめると動的試験てことだな
207デフォルトの名無しさん
2021/09/03(金) 09:16:16.79ID:6YHhlfzl MozillaのFireFoxの場合、わざとクラッカーがセキュリティーホールを見つけ出して
そこを付いてくるから、普段の実行テストでは一度も発見できなかった
メモリーバグが問題になるが、普通のアプリの場合、ユーザーがわざとバグを
付くことはないから、そのようなホールはあまり関係ないと思う。
テスト駆動開発とかアジャイル開発とかも、普段使いで問題が無いかをテスト
することで大部分のバグが無い状態で開発していこうとする考え方。
それでもほとんどのメモリーバグは無い状態になっている。
メモリーバグがあると、普段使い的なテストをしても発覚することが多いから。
昔から言われているメモリーバグの問題点は、再現性が有る場合でも、バグが
ある行とそれが発覚した時期とがずれていることがあるから。
デバッグモードでコンパイラが自動的にチェックするコードを入れていれば、
それはなくなるはず。
Rustはその意味で、経験法則的にFireFoxみたいな特殊なものでは意味があるが
一般アプリでは余り意味が無い。ブラウザの特殊性は、世界中のクラッカーが
セキュリティーホールを探してわざとその穴を付いてくること。一般アプリでは
それがないので、隠れたバグは隠れたままになっていることが多くて、
テストで出てこなかったバグは実際問題的には余り問題となら無い事が多い。
そこを付いてくるから、普段の実行テストでは一度も発見できなかった
メモリーバグが問題になるが、普通のアプリの場合、ユーザーがわざとバグを
付くことはないから、そのようなホールはあまり関係ないと思う。
テスト駆動開発とかアジャイル開発とかも、普段使いで問題が無いかをテスト
することで大部分のバグが無い状態で開発していこうとする考え方。
それでもほとんどのメモリーバグは無い状態になっている。
メモリーバグがあると、普段使い的なテストをしても発覚することが多いから。
昔から言われているメモリーバグの問題点は、再現性が有る場合でも、バグが
ある行とそれが発覚した時期とがずれていることがあるから。
デバッグモードでコンパイラが自動的にチェックするコードを入れていれば、
それはなくなるはず。
Rustはその意味で、経験法則的にFireFoxみたいな特殊なものでは意味があるが
一般アプリでは余り意味が無い。ブラウザの特殊性は、世界中のクラッカーが
セキュリティーホールを探してわざとその穴を付いてくること。一般アプリでは
それがないので、隠れたバグは隠れたままになっていることが多くて、
テストで出てこなかったバグは実際問題的には余り問題となら無い事が多い。
208デフォルトの名無しさん
2021/09/03(金) 09:22:40.61ID:6YHhlfzl >>207
例えば、ダングリングポインタ(Use After Free)は、ptrがどこかでまだ使用中なのに、
free(ptr)としてしまうこと。しかし、そのfree()をした時点ではアプリはダウン
しないし、ptrに対して読み書きした段階でもまだ発覚せず、ptrが指すメモリー
アドレスを別の目的で使用してしまって、お互いに読み書きがある種の干渉を
起こしてしまって、データがめちゃくちゃになり、それによってどこかで不具合
が生じた時点で発覚する。
なので、バグの根本原因であるfree(ptr)を実行した行がどこかを探し出しにくいと
される。
しかし、このバグの場所とバグが起きた場所のずれは、デバッグビルド時に速度を
落としてチェックすれば本当は防げるはず。
例えば、ダングリングポインタ(Use After Free)は、ptrがどこかでまだ使用中なのに、
free(ptr)としてしまうこと。しかし、そのfree()をした時点ではアプリはダウン
しないし、ptrに対して読み書きした段階でもまだ発覚せず、ptrが指すメモリー
アドレスを別の目的で使用してしまって、お互いに読み書きがある種の干渉を
起こしてしまって、データがめちゃくちゃになり、それによってどこかで不具合
が生じた時点で発覚する。
なので、バグの根本原因であるfree(ptr)を実行した行がどこかを探し出しにくいと
される。
しかし、このバグの場所とバグが起きた場所のずれは、デバッグビルド時に速度を
落としてチェックすれば本当は防げるはず。
209デフォルトの名無しさん
2021/09/03(金) 09:24:49.55ID:6YHhlfzl210デフォルトの名無しさん
2021/09/03(金) 10:00:52.25ID:yL2Kwy6+ 根拠のない決めつけばかりで気持ち悪い。
211デフォルトの名無しさん
2021/09/03(金) 10:16:16.17ID:lmzB7IZ6 >>207
世の中にはテスターという職種の人がいてだな
世の中にはテスターという職種の人がいてだな
212デフォルトの名無しさん
2021/09/03(金) 10:46:20.27ID:yJUEU9nq >>207
任意のファイルを読むアプリはファイルのパーサーの脆弱性をついてユーザ権限でコードを実行される可能性がある
どちらかと言えばアプリよりサーバとしてアクセスを受け付けているプログラムの脆弱性をつかれて攻撃コードの実行を許してしまうことが多い
さらに上のような場合でも、アプリやサーバのプログラム自体に脆弱性があるのではなく、使用しているOSのAPI側の実装の脆弱性をつかれる可能性がある
こういうアプリやサーバやOSのコードの脆弱性にMSやGoogleは悩まされている
任意のファイルを読むアプリはファイルのパーサーの脆弱性をついてユーザ権限でコードを実行される可能性がある
どちらかと言えばアプリよりサーバとしてアクセスを受け付けているプログラムの脆弱性をつかれて攻撃コードの実行を許してしまうことが多い
さらに上のような場合でも、アプリやサーバのプログラム自体に脆弱性があるのではなく、使用しているOSのAPI側の実装の脆弱性をつかれる可能性がある
こういうアプリやサーバやOSのコードの脆弱性にMSやGoogleは悩まされている
213デフォルトの名無しさん
2021/09/03(金) 11:00:44.84ID:yJUEU9nq Valgrind と言う動的解析ツールを調べて見るといい
うちはC++のプログラムは基本これを通すことになってる
商用ならもっといいツールもあるかも知れない
そういうのを利用しても充分でないから静的解析するRustが注目されている
うちはC++のプログラムは基本これを通すことになってる
商用ならもっといいツールもあるかも知れない
そういうのを利用しても充分でないから静的解析するRustが注目されている
214デフォルトの名無しさん
2021/09/03(金) 11:27:43.59ID:6Xh4x7Us 商用の静的解析ツール使ってると、正直メモリ関係のバグなんてありえないと思えるくらいいろいろ見つけてくれるよ
215デフォルトの名無しさん
2021/09/03(金) 11:44:23.16ID:9y+1HwQb コンパイル時間に糸目を付けなければ、静的解析はもっと出来る。
216デフォルトの名無しさん
2021/09/03(金) 11:47:10.63ID:lmzB7IZ6 > メモリ関係のバグなんてありえないと思える
lintの副作用がモロに出てるなw
lintの副作用がモロに出てるなw
217デフォルトの名無しさん
2021/09/03(金) 15:20:21.54ID:MvVz2a9W 言うまでもない事だが完璧なメモリチェッカーは存在し得ない
停止問題と同値だからな
停止問題と同値だからな
218デフォルトの名無しさん
2021/09/03(金) 15:50:45.07ID:6Xh4x7Us 完璧無理っておまえの毛髪の量がプログラム停止に与える影響が読めないとかそういう話だろ?
限定的な範囲で正しけりゃ十分だよ
限定的な範囲で正しけりゃ十分だよ
219デフォルトの名無しさん
2021/09/03(金) 16:54:40.55ID:lmzB7IZ6 ゴールポストは動かしちゃダメだよ
220デフォルトの名無しさん
2021/09/03(金) 17:38:29.50ID:6Xh4x7Us 無限遠のゴールを設定するのはアホだべ
221デフォルトの名無しさん
2021/09/03(金) 17:51:18.36ID:xmwLNRYX スクリプト言語も普通にクラッシュすることあるから
222デフォルトの名無しさん
2021/09/03(金) 17:52:37.20ID:xmwLNRYX OSのコアダンプ出力とリブートに救われる手のひらの孫悟空
223デフォルトの名無しさん
2021/09/03(金) 18:28:35.67ID:iCLUv6gH rustでもメモリアロケーション失敗するとパニックになる、てリーナスが突っ込んでいたろ。
c++の場合はどうなんのかな。
c++の場合はどうなんのかな。
224デフォルトの名無しさん
2021/09/03(金) 20:13:28.89ID:USKNPKWa CoverityとVectorCASTは使ったことあるけど検知レベル最高にしても見逃すリークや二重フリー, ダングリングはそれなりにある (そもそもコードの構造が悪い場合も多いが)
検知レベル上げ過ぎると逆にFalse Positiveも増えるし
検知レベル上げ過ぎると逆にFalse Positiveも増えるし
225デフォルトの名無しさん
2021/09/04(土) 07:59:49.00ID:kFVsNuY8 無限遠のゴールポストを動かすって
こいつ文系か?
こいつ文系か?
226デフォルトの名無しさん
2021/09/04(土) 08:08:40.61ID:N/QuNfWR まあ見つからないのは間違いなく書き方が悪いよな
227デフォルトの名無しさん
2021/09/04(土) 19:04:52.86ID:7+pvijvQ ∞の概念が理解できるならそいつはもう文系ではあるまい
228デフォルトの名無しさん
2021/09/04(土) 19:11:19.50ID:ICKB9ww0 ε-N論法
229デフォルトの名無しさん
2021/09/04(土) 22:28:42.31ID:mLTAxmCN 超久しぶりにC++の参考書 買った。
いまってC++20までいってるんでしょ?
時代遅れもいいところだから勉強しようと思ってw
ただ読む気がおきない。
「pythonでいいか」って思いが・・・ww
いまってC++20までいってるんでしょ?
時代遅れもいいところだから勉強しようと思ってw
ただ読む気がおきない。
「pythonでいいか」って思いが・・・ww
230ハノン ◆QZaw55cn4c
2021/09/04(土) 23:52:57.58 >>223
https://tabesugi.net/memo/2009/1a.html
C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために
さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが
簡単に生産されるようになってる。正直いって、C を選ぶ理由が C++ プログラマーを
追っぱらうため *だけ* だったとしても、それ自体、C を使う強力な理由になりうる。
C++ はトンでもなく悪い設計の元になりうる。どうせこの言語ではいつも STL やら
Boost やら、その他ゲロゲロベロベロの「素敵な」ライブラリの機能を使って、
それがあんたのプログラムに「役立つ」んだろうが、以下のことが起きる:
- うまく動かないときにもたらされる際限のない苦痛 (あと STL とか、特に Boost が
安定してるとか移植性があるとかいう奴は、どいつもこいつも大ウソつきで、
もはや笑えるレベルを超えている)
- 非効率な抽象プログラミングモデルで、2年たった後にこれらが実はそんなに
効率的じゃなかったことに気づくケース。でもそのときにはすでに全部の
コードがその素晴らしいオブジェクトモデルに依存していて、直すためには
アプリ全体を書き直さなきゃなんない。
言いかえれば、唯一まともで、効率がよくて、システムレベルで使えて、移植性がある
C++ ってのは、基本的に C で使える機能だけに限ったときなんだ。そして C だけに
限定するってことは、他の人がそれをめちゃくちゃにしないってことで、
ついでに沢山のプログラマが実際に低水準の問題を理解することができて、アホらしい
「オブジェクト・モデル」のたわごとを持ちこまないってことだ。
https://tabesugi.net/memo/2009/1a.html
C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために
さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが
簡単に生産されるようになってる。正直いって、C を選ぶ理由が C++ プログラマーを
追っぱらうため *だけ* だったとしても、それ自体、C を使う強力な理由になりうる。
C++ はトンでもなく悪い設計の元になりうる。どうせこの言語ではいつも STL やら
Boost やら、その他ゲロゲロベロベロの「素敵な」ライブラリの機能を使って、
それがあんたのプログラムに「役立つ」んだろうが、以下のことが起きる:
- うまく動かないときにもたらされる際限のない苦痛 (あと STL とか、特に Boost が
安定してるとか移植性があるとかいう奴は、どいつもこいつも大ウソつきで、
もはや笑えるレベルを超えている)
- 非効率な抽象プログラミングモデルで、2年たった後にこれらが実はそんなに
効率的じゃなかったことに気づくケース。でもそのときにはすでに全部の
コードがその素晴らしいオブジェクトモデルに依存していて、直すためには
アプリ全体を書き直さなきゃなんない。
言いかえれば、唯一まともで、効率がよくて、システムレベルで使えて、移植性がある
C++ ってのは、基本的に C で使える機能だけに限ったときなんだ。そして C だけに
限定するってことは、他の人がそれをめちゃくちゃにしないってことで、
ついでに沢山のプログラマが実際に低水準の問題を理解することができて、アホらしい
「オブジェクト・モデル」のたわごとを持ちこまないってことだ。
231デフォルトの名無しさん
2021/09/05(日) 00:05:05.82ID:yIsM5ONG バカが使いこなせる言語ではないからな
232デフォルトの名無しさん
2021/09/05(日) 00:27:52.33ID:eMsTCIh+ linusに言われると返す言葉もないが、その後の文脈にある
『もし C++ で書かれた VCS が欲しいのなら、Monotone を見てみるといい。
ほんとに。連中は「本物のデータベース」を使っているよ。
「素敵なオブジェクト指向ライブラリ」も使ってる。「ナイスな C++ の抽象化」も
使ってる。そして率直なことろ、一部の情報系の人間が喜びそうな
これらすべての設計上の決定のために、できてきた結果はゲロゲロで
保守不可能なカオスだ。
でもあんたはきっと git よりも気に入るだろう。保証するよ。』
な感じでC++を気に入って、夢を見ていたいんだろうね。
『もし C++ で書かれた VCS が欲しいのなら、Monotone を見てみるといい。
ほんとに。連中は「本物のデータベース」を使っているよ。
「素敵なオブジェクト指向ライブラリ」も使ってる。「ナイスな C++ の抽象化」も
使ってる。そして率直なことろ、一部の情報系の人間が喜びそうな
これらすべての設計上の決定のために、できてきた結果はゲロゲロで
保守不可能なカオスだ。
でもあんたはきっと git よりも気に入るだろう。保証するよ。』
な感じでC++を気に入って、夢を見ていたいんだろうね。
233デフォルトの名無しさん
2021/09/05(日) 00:53:47.56ID:66hkUr5p 「オレはC++を使いこなせている」と思い込む素人を生温かく見守るスレはここですね
234デフォルトの名無しさん
2021/09/05(日) 01:42:41.34ID:eMsTCIh+235デフォルトの名無しさん
2021/09/05(日) 06:00:11.76ID:fsFc+8nQ 昔、バカでも使える言語でプログラマ人口増やしましょうてなことやってたな
BASICじゃないぞ、あれは初心者用で、バカ用じゃない
計算を数式で書くのは理系だけだから
英文で書けるようにして文系でも使えるようにしようという試みがあった
で、狙いどおり本当にバカプログラマを量産できた
それでいいことあったか?
C++はアレの逆をいっているわけだ
BASICじゃないぞ、あれは初心者用で、バカ用じゃない
計算を数式で書くのは理系だけだから
英文で書けるようにして文系でも使えるようにしようという試みがあった
で、狙いどおり本当にバカプログラマを量産できた
それでいいことあったか?
C++はアレの逆をいっているわけだ
236デフォルトの名無しさん
2021/09/05(日) 06:45:24.37ID:ClPlKiJv Qtを使ってるから、C++一択だな。
237デフォルトの名無しさん
2021/09/05(日) 12:24:02.01ID:cBh+EO/A namespaceと多態性はCだけではやりにくい
238デフォルトの名無しさん
2021/09/05(日) 12:47:17.91ID:0Cj96kG7 静的なディスパッチの充実がCに必要なのではないか
239デフォルトの名無しさん
2021/09/05(日) 14:17:57.22ID:cBh+EO/A >>234
Linuxはモノリシックカーネルなので動的メモリ確保を伴うような軟弱な
モジュールもカーネルのうちに入ってしまっているからメモリ不足ぐらいで
パニくられると手の打ちようがないから困るという話なんじゃないの(適当
OSはリソース管理を放り投げて停止することは許されないから
伝統的なやり方では起動時に非常用のメモリブロックをアロケートしておいて
メモリが枯渇したら非常用のメモリブロックを使うみたいな手段がとられる(と思う
がパニックされたらそこまで行きつかない
※ 個人の感想です
Linuxはモノリシックカーネルなので動的メモリ確保を伴うような軟弱な
モジュールもカーネルのうちに入ってしまっているからメモリ不足ぐらいで
パニくられると手の打ちようがないから困るという話なんじゃないの(適当
OSはリソース管理を放り投げて停止することは許されないから
伝統的なやり方では起動時に非常用のメモリブロックをアロケートしておいて
メモリが枯渇したら非常用のメモリブロックを使うみたいな手段がとられる(と思う
がパニックされたらそこまで行きつかない
※ 個人の感想です
240デフォルトの名無しさん
2021/09/05(日) 14:38:48.42ID:eMsTCIh+ >>239
具体的に何かのケースを想定して言ってるわけじゃないのか。
ぶっちゃけOSをC++で書くならカーネルでnew/malloc/mmapとか使う実装はしないだろうし、処理系が使うランタイムにも依存するけど基本その辺はカスタマイズできるようになってると思う。
rustでもそんな感じで処理系次第って話だと思う。
具体的に何かのケースを想定して言ってるわけじゃないのか。
ぶっちゃけOSをC++で書くならカーネルでnew/malloc/mmapとか使う実装はしないだろうし、処理系が使うランタイムにも依存するけど基本その辺はカスタマイズできるようになってると思う。
rustでもそんな感じで処理系次第って話だと思う。
241デフォルトの名無しさん
2021/09/05(日) 14:44:00.68ID:LgQhIBwq242ハノン ◆QZaw55cn4c
2021/09/05(日) 17:28:18.83 >>241
>>230 の類の話は昔からいわれていたもので、これも有名ですね
http://www.kh.rim.or.jp/~nagamura/misc/stroustrup-interview.html
インタビューア(以下「I」): あなたがソフトウェアデザインの世界を一変させてから何年にもなる。振り返ってみて、感想は。
Stroustrup(以下「S」): 実はあなたがここへ来る直前、当時のことを思い出していたんだ。おぼえているかな。誰もが C 言語を使っていたけど、問題はみんな結構うまくコーディングしていたことだった。
大学も C 言語を教えるのがうまくなっていたしね。驚異的な割合で有能な――「有能」という言葉は強調しておきたい――卒業生を量産していた。それが問題の原因だったんだ
。
S: ある日、オフィスにいたときに、ある策略を思いついたんだ。バランスを少し回復させる策略をね。「プログラマが余るなんてことが絶対にありえないくらい、複雑でおぼえにくい言語があったらどうなるかな」ってね。
実は、この考えの一部は X10――例の X Window の――から頂いたんだ。あれはひどいグラフィックシステムでね、Sun 3/60とかでないと動かなかった。
ばかばかしいくらい複雑な構文規則とか、わかりにくい関数とか、疑似オブジェクト指向的な構造とか、僕がほしいと思う要素は全部揃っていたんだよね。
今でさえ、生の X Window コードを書く人間なんていない。正気を保つには Motif を使うしかないんだ。
S: もうかなり時間がたったしね、C++ が時間の無駄だということにはほとんどの人が気がついたとは思うけど、でも当初予想していたよりはずいぶん時間がかかったな。
I: 具体的に何をどうやったのかな。
S: 最初はほんの冗談のつもりでね、みんながあの本を真に受けるとは思ってもみなかったんだ。脳みそが半分でもあれば、オブジェクト指向プログラミングが非直感的で、非論理的で、非効率なことくらいはわかるよね。
I: え?
S: それに「コードの再利用性」ときたら…。どこかの会社がコードを再利用したなんて話を聞いたことがある?
I: うん、でも C++ は基本的にはしっかりした言語だと思う。
S: それ、本気で信じてるね。実際の C++ プロジェクトの経験はある? どうなるかって言うとね、まず第一に、いろいろワナを仕掛けてあるから、よほど小規模なプロジェクト以外は一発では動かないようになっているんだ。
たとえば演算子のオーバーロードがそうだ。たいていの場合、プロジェクトの終わり頃にはほとんどのモジュールで演算子をオーバーロードしている。
プログラマの連中が、トレーニングコースで教わったとおりにやらなくちゃいけないと思うからだ。つまり、1つの演算子の持つ意味が、モジュールによってまったく異なることになる。
モジュールの数が100かそこらあるときに、これをまとめあげようとしたらどうなると思う? データ隠蔽もあるね。モジュール間の連繋にどこかの会社が苦労しているなんて話を聞くと、笑いを抑えられないときがあるよ。
「Synergistic」という言葉は、プロジェクト管理者の胸に刺さったナイフをグリグリ回すためだけに発明されたんじゃないかと思うな。
>>230 の類の話は昔からいわれていたもので、これも有名ですね
http://www.kh.rim.or.jp/~nagamura/misc/stroustrup-interview.html
インタビューア(以下「I」): あなたがソフトウェアデザインの世界を一変させてから何年にもなる。振り返ってみて、感想は。
Stroustrup(以下「S」): 実はあなたがここへ来る直前、当時のことを思い出していたんだ。おぼえているかな。誰もが C 言語を使っていたけど、問題はみんな結構うまくコーディングしていたことだった。
大学も C 言語を教えるのがうまくなっていたしね。驚異的な割合で有能な――「有能」という言葉は強調しておきたい――卒業生を量産していた。それが問題の原因だったんだ
。
S: ある日、オフィスにいたときに、ある策略を思いついたんだ。バランスを少し回復させる策略をね。「プログラマが余るなんてことが絶対にありえないくらい、複雑でおぼえにくい言語があったらどうなるかな」ってね。
実は、この考えの一部は X10――例の X Window の――から頂いたんだ。あれはひどいグラフィックシステムでね、Sun 3/60とかでないと動かなかった。
ばかばかしいくらい複雑な構文規則とか、わかりにくい関数とか、疑似オブジェクト指向的な構造とか、僕がほしいと思う要素は全部揃っていたんだよね。
今でさえ、生の X Window コードを書く人間なんていない。正気を保つには Motif を使うしかないんだ。
S: もうかなり時間がたったしね、C++ が時間の無駄だということにはほとんどの人が気がついたとは思うけど、でも当初予想していたよりはずいぶん時間がかかったな。
I: 具体的に何をどうやったのかな。
S: 最初はほんの冗談のつもりでね、みんながあの本を真に受けるとは思ってもみなかったんだ。脳みそが半分でもあれば、オブジェクト指向プログラミングが非直感的で、非論理的で、非効率なことくらいはわかるよね。
I: え?
S: それに「コードの再利用性」ときたら…。どこかの会社がコードを再利用したなんて話を聞いたことがある?
I: うん、でも C++ は基本的にはしっかりした言語だと思う。
S: それ、本気で信じてるね。実際の C++ プロジェクトの経験はある? どうなるかって言うとね、まず第一に、いろいろワナを仕掛けてあるから、よほど小規模なプロジェクト以外は一発では動かないようになっているんだ。
たとえば演算子のオーバーロードがそうだ。たいていの場合、プロジェクトの終わり頃にはほとんどのモジュールで演算子をオーバーロードしている。
プログラマの連中が、トレーニングコースで教わったとおりにやらなくちゃいけないと思うからだ。つまり、1つの演算子の持つ意味が、モジュールによってまったく異なることになる。
モジュールの数が100かそこらあるときに、これをまとめあげようとしたらどうなると思う? データ隠蔽もあるね。モジュール間の連繋にどこかの会社が苦労しているなんて話を聞くと、笑いを抑えられないときがあるよ。
「Synergistic」という言葉は、プロジェクト管理者の胸に刺さったナイフをグリグリ回すためだけに発明されたんじゃないかと思うな。
243デフォルトの名無しさん
2021/09/05(日) 17:47:40.38ID:eWmYSwWp244デフォルトの名無しさん
2021/09/05(日) 18:05:24.16ID:Lkm6/1Sl246はちみつ餃子 ◆8X2XSCHEME
2021/09/05(日) 18:10:26.36ID:vh6AiUnJ247デフォルトの名無しさん
2021/09/05(日) 18:23:29.28ID:cBh+EO/A >static std::shared_ptr<T> O = std::make_shared<T>(A...);
の部分って、Singleton()の初回呼び出しが複数のスレッドから同時に起こってもき
ちんと排他してくれるんでした
っけ
また排他してくれるとしても最速(そのアーキテクチャ(マルチコアかもしれない)で最も適切)
であることを気体していいんでしたっけ……
つまり生成に成功した後は排他不要なわけで、無駄にロックを取りに行きたくない……
の部分って、Singleton()の初回呼び出しが複数のスレッドから同時に起こってもき
ちんと排他してくれるんでした
っけ
また排他してくれるとしても最速(そのアーキテクチャ(マルチコアかもしれない)で最も適切)
であることを気体していいんでしたっけ……
つまり生成に成功した後は排他不要なわけで、無駄にロックを取りに行きたくない……
248デフォルトの名無しさん
2021/09/05(日) 18:24:18.83ID:yIsM5ONG >>242
おまえホント頭悪いな
おまえホント頭悪いな
249デフォルトの名無しさん
2021/09/05(日) 18:27:31.03ID:cBh+EO/A みたいな配慮がシングルトンにしたとたんに必要になる
メインの処理が始まる前に普通の初期化関数呼び出しでOを生成したらそれで済むのに、、、
メインの処理が始まる前に普通の初期化関数呼び出しでOを生成したらそれで済むのに、、、
250デフォルトの名無しさん
2021/09/05(日) 18:28:54.12ID:0Cj96kG7 >>247
呼ばれたところで最後の奴が勝てば問題ないのでは
呼ばれたところで最後の奴が勝てば問題ないのでは
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★3 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 【千葉】成田空港の保安検査員(八街市八街ほ)を逮捕 中国籍の女性が置き忘れた現金入りのポーチを窃盗か [ぐれ★]
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★3
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★4
- 【高市悲報】中国「国連安保理の許可なしに日本を攻撃可能だ」★2 [115996789]
- 【んな専🏡】華金もんなっしょいとはやれやれなのらね🍬(・o・🍬)🏰
- 日中戦争起きたら5日で自衛隊壊滅するらしい。じゃあ徴兵も無いし、俺等が必死になって反対してやる理由なくね? [237216734]
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
