C++相談室 part133

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 1fcf-H1rY)
垢版 |
2017/11/24(金) 16:52:50.43ID:WoNXR2ax0
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512

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

前スレ
C++相談室 part132
http://mevius.5ch.net/test/read.cgi/tech/1507561894/

このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.102【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1509780815/

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

[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
463デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 05:49:25.74ID:taGmyuVj0
>>462
いいから読み返してこい。自分がどんなトンチンカンなレス返したのか自覚するまで帰ってくるな。
2017/12/12(火) 06:04:07.77ID:GtRyHF+60
>>463
すまんマジでわからん
お手数ですが改めて解説して頂けますか?
2017/12/12(火) 07:20:11.15ID:55mcEBCKM
>>464
プロパティっつーのは
> to.backgroundColor = from.textColor;
みたいなコードでも.backgroundColorが変更された時の処理が書ける
って話だから
466デフォルトの名無しさん (スッップ Sdbf-6IXG)
垢版 |
2017/12/12(火) 08:10:48.13ID:R9+tEHmjd
プロパティが常に左辺値として扱えるってなら面白いけど、ただのシンタックスシュガーなんでしょ?
2017/12/12(火) 08:35:44.42ID:CHSzHMzZ0
getsetなんちゃらより視覚的にわかりやすくて見た目がスッキリして汚物感がない
2017/12/12(火) 08:37:10.49ID:aBOGkUwZ0
あえて無視してるとかじゃなくてガチでわからんのか……
2017/12/12(火) 08:43:59.80ID:CHSzHMzZ0
getsetの()が汚物というかオムツ感
2017/12/12(火) 08:47:30.57ID:L7nvt31i0
to.backgroundColor.blue = 100;
みたいに書いても意図通りに動かないからクソ
2017/12/12(火) 09:13:40.57ID:y1kEZ39i0
to.backgroundColor.blue(100);
でいいだろ。
472デフォルトの名無しさん (ワッチョイ 9fa4-MWkS)
垢版 |
2017/12/12(火) 11:33:45.81ID:UV42xOWp0
あるデータメンバをpublicにしたほうが合理的と判断したならすればいい
そこでいちいち教条主義にとらわれて見えない不安と戦うアフォは
物事の分別がわかるようになるまでROMってろ
2017/12/12(火) 13:18:37.14ID:55mcEBCKM
また流れの読めない奴が来たのかよ...
しかもドヤ顔 w

> 物事の分別がわかるようになるまでROMってろ
お前がな
474デフォルトの名無しさん (ワッチョイ 9fa4-MWkS)
垢版 |
2017/12/12(火) 15:47:21.47ID:UV42xOWp0
読むに足る話をしていたつもりなら相当なコレ@だな
475デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 16:11:45.84ID:taGmyuVj0
>>470
コンパイルエラーになるなら問題ないやろ
2017/12/12(火) 16:41:48.86ID:GtRyHF+60
>>465
それをC++でどうするかって話でしょ…
そんなことで上から煽ってたんか
付き合う必要なかったな
477デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 16:52:53.52ID:taGmyuVj0
>>476
お前がレスしたコメントが
「それをC++でどうするかって話」に読めたならマジで救いようがないな。
何がどうなってお前の中ではそうなったのか知らんがそれを外に出してくんな。
2017/12/12(火) 17:02:23.33ID:WkB3oGfAM
>>476
> それをC++でどうするかって話でしょ…
そんな話しはしとらんし
引っ込みつかなくなってるのかマジで話の流れが読めないのかわからんけどしばらくROMっとけ
2017/12/12(火) 17:07:23.51ID:CHSzHMzZ0
どうにかする以前に現状の標準規格ではどうにもならない
2017/12/12(火) 18:02:57.84ID:GtRyHF+60
>>478
お前こそスレタイ見直した方が良いぞ
引っ込みつかなくなってんのはどっちだか
2017/12/12(火) 18:23:53.63ID:T04lnVIC6
ID:GtRyHF+60が悪い
482デフォルトの名無しさん (ワッチョイ 9fa4-MWkS)
垢版 |
2017/12/12(火) 18:29:31.41ID:UV42xOWp0
要するに俺様の個人的好みがああだから言語もそれに合わせるべきと言っているだけ
周りと全会一致状態ならともかく批判的な意見に攻撃的な態度をとるだけ
どっから見ても単なる厨二病の自己チュー
483デフォルトの名無しさん (ワッチョイ 9fa4-MWkS)
垢版 |
2017/12/12(火) 18:31:17.47ID:UV42xOWp0
まあ言論の自由なんだけどね
やってて恥ずかしおまへんか?
2017/12/12(火) 18:32:23.92ID:bXatM7Na0
setの方はプロキシオブジェクト噛ませば無理矢理できなくもない(やる価値もない)
getはどうやっても無理
2017/12/12(火) 18:33:41.16ID:T04lnVIC6
批判的な意見(噛み合ってはいない)
2017/12/12(火) 18:45:22.28ID:v/pth21HM
マジで引っ込みつかなくなってるんだな...

>>443 そろそろプロパティが導入されたかなぁ?
>>444 されないねぇ、何が嬉しいのかよくわからんけど
>>447 メソッドが読み書きするより読みやすいでしょ

>>448 変更時に処理を追加できないだろうが

一同 ファッ!?、ヤベーよ、こいつ w
2017/12/12(火) 19:01:09.51ID:0sOBySxq0
プロパティはmsvcだと普通に使えるし、実装できない訳じゃないでしょ
つーかclangもマイクロソフト独自のプロパティに対応してるらしいとの噂
2017/12/12(火) 19:45:15.77ID:3ZbnKJrs0
C++と関係ない話題をふっておいて噛み合ってないとか
2017/12/12(火) 19:46:18.45ID:3ZbnKJrs0
本気で疑問なら調べる手段はいくらでもあるのに
2017/12/12(火) 19:47:35.03ID:3ZbnKJrs0
一応、手間を惜しまなければ代入くらいは出来るけど
2017/12/12(火) 19:48:28.11ID:3ZbnKJrs0
代入とか書くと変な勘違いするヤツがいるか
設定
492デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 19:55:46.38ID:taGmyuVj0
出来るけどテンプレート引数やautoと相性悪いからあまりオススメしない
2017/12/12(火) 20:05:47.73ID:aBOGkUwZ0
ヤベー奴怒りの4連投
2017/12/12(火) 20:34:17.86ID:3ZbnKJrs0
おすすめしないのは当然
C++なんだから
2017/12/12(火) 20:43:27.77ID:9uFqgfKJ0
>>478
バカですか?
2017/12/12(火) 20:46:50.47ID:9uFqgfKJ0
C++でC#みたいなプロパティがサポートされる日は永遠に来ないからもう駄々こねるな
2017/12/12(火) 20:55:07.83ID:+86TRiAH0
頭いっちゃってる奴らがサイドショーでもやってんのか?
2017/12/12(火) 22:04:04.36ID:L7nvt31i0
C#以外のメジャーな言語に採用されたら有用性を認めてやる
2017/12/12(火) 22:20:18.74ID:4svaTAZj0
>>498
JavaScriptにはあるよ。
便利だが、基本的にアジャイルで頻繁に変更する環境向けであり、
C++みたいにゴリゴリやりたいところに向くかは少し疑問。
とはいえ、俺は導入に賛成だが。
500デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 22:24:39.30ID:taGmyuVj0
>>498
Python Kotlin Swift
2017/12/12(火) 22:27:11.88ID:jXjdcIPTM
>>500
Swiftにはないよ。
Computedプロパティと.Netのプロパティを同じだと思ってるなら一から勉強し直したほうがいい。
502デフォルトの名無しさん (ワッチョイ 9780-yV1O)
垢版 |
2017/12/12(火) 22:30:05.03ID:taGmyuVj0
>>501
Storedプロパティに限定した話だったの?
俺そっち要らない派だからどうでもいいんだけど。
2017/12/12(火) 22:32:20.45ID:Vo2kP02L0
>>495
>>486読んでまだそんなこと言ってるなら相当ヤベーぞ w
2017/12/12(火) 22:32:51.93ID:L7nvt31i0
C#のプロパティはカプセル化の範疇を超えた使い方する奴が出てきてからクソだと思い始めた
2017/12/12(火) 22:43:30.63ID:4svaTAZj0
>>504
可能であれば例よろしく。URLでいい。
2017/12/12(火) 22:44:50.18ID:DNRoqyK/0
いや、どんな機能もクソな使い方をする奴は少なからずいるよ。
そんなもんだよ。
2017/12/12(火) 22:48:51.09ID:qpuoD4bc0
C言語にバックポートしてほしい機能はテンプレート一択。
何を言っているのかわからないと思うが。。。
2017/12/12(火) 23:10:28.93ID:L7nvt31i0
>>505
プロパティ便利すぎとか言ってる同僚が書いた200行を超えるゲッターや初回だけ挙動が違うセッターなど
publicな変数も混ざってる環境なため普通の変数だと思ってあっちこっちで参照していたら気づかないうちに激重になっていた
どこがボトルネックになっているのか探すのに時間がかかった
2017/12/12(火) 23:13:23.41ID:5Fm7w0SJd
仮にもc++使いならばそんなアホみたいな事例を気にする必要はなかろう
2017/12/12(火) 23:43:37.47ID:4svaTAZj0
>>508
サンクス。

> どこがボトルネックになっているのか探すのに時間がかかった
多分これがC++がプロパティを入れない理由だと俺は思っているが、
今のC++の勢いならどうせいつか入れるのだろうとも思っている。

> 200行を超えるゲッター
これはあまり行儀はよくないが、
メソッドとフィールドの文法的区別をなくすのがgetterでもあるから、
正しいといえば正しい。

> 初回だけ挙動が違うセッター
これはコンストラクタでやるべきものをセッターに持って来たことが悪い。
つまり、セッターの問題ではない。
セッター文法がこれを誘発するかと言えば、関係ないと思うから、プログラマその人の問題だと思う。

で、C++は一応「プログラマは正しくプログラミングできる」という前提だから、
どうせプロパティもいつか入れるんでしょ、と思っている。
その時には、「getterには重い処理を入れない」等の掟が出来るのだと思う。
2017/12/13(水) 00:53:04.54ID:3t1TagYk0
=での演算子のオーバーロードがsetterに相当する
その辺りを自動でやってほしい
他、+=やらの演算子も余りにも面倒なのでどうにかしてほしい

pythonではそういう軟弱な特殊メソッドがあるが軟弱なのでC++の感触には合わない
さらに困難で不可解な記述方法を編み出すべきだ
2017/12/13(水) 00:56:28.78ID:SIeP7pZg0
どういうポリシーだよ。
2017/12/13(水) 01:04:25.30ID:VGyxWnO70
C#についてはサッパリだけど、調べたらかなり便利そうな機能だね、処理を差し挟めるというか?

C++で「stringのように振る舞う値」を作ろうとするとまずその型から定義しなきゃならないし
継承でやっつけることも可能だけど、問題点もある
さらに「intのように振る舞う値」となると継承不可だし、各種演算子をいちいち定義しないといけない

型を定義したいわけじゃなく、ある型のインターフェースを持ちつつアクセス時の処理を入れたいだけ、ってのは
確かにC++にも欲しくなるね

大した例えじゃないと思うけど、いずれ似たようなことが出来るようになったらいいなぁ
2017/12/13(水) 01:07:04.42ID:SIeP7pZg0
プロパティって要するに、セッターは1引数の関数って場合が多いような。ゲッターは引数無しの関数。
カッコつけないだけで可読性がそこまで上がるもんかと思う。
2017/12/13(水) 01:13:16.30ID:YFiH9SDO0
window.SetSize(display.GetSize() * 0.5);
よりは
window.size = display.size * 0.5;
の方が読みやすいとは思う
2017/12/13(水) 01:21:21.53ID:SIeP7pZg0
んー。まぁそうかも。
2017/12/13(水) 02:17:03.25ID:65/6bu6P0
ゲッターのポインタをどうやって取るつもりだよ
2017/12/13(水) 02:38:27.29ID:SIeP7pZg0
なぜそんな使い方をするのかよくわからん。
参照でパクってくるのはできないの?
2017/12/13(水) 02:39:20.43ID:SIeP7pZg0
あー、あーるばりゅーに&つけるのってダメなんだっけ?
2017/12/13(水) 02:47:06.16ID:4G0mfW720
そうそう、汚物感が皆無なのよねえ
2017/12/13(水) 04:41:15.27ID:pnzC2QZad
>>500
Kotlinはなんか注目度高いらしいな
スマートニュースか何かで見た
2017/12/13(水) 04:58:13.06ID:0JTwiv230
>>496
非標準だけどC++Builderが一番求めるものに近いと思う
http://support.embarcadero.com/jp/article/35947
2017/12/13(水) 05:38:19.00ID:qfWT6RzB0
ここで議論してる人って、↓の話は当然理解してるんだよね。
http://ufcpp.net/study/miscprog/accessor.html#proxy
2017/12/13(水) 06:53:58.70ID:55R6yVv7M
>>523
>>484
2017/12/13(水) 07:47:58.27ID:SIeP7pZg0
https://ideone.com/x4WLWF
これを見てくれ、こいつをどう思う?
大分前にここにも上げたやつ。
こういうこともできなくないけど、標準で持ってほしいのはわからんでもない。
まぁ、カッコ一個減ったくらいでそんなに変わるかどうかはビミョーなところ。
2017/12/13(水) 07:51:32.20ID:DfK3Pc7X0
>>502
Storedとも違う
2017/12/13(水) 13:46:22.45ID:VGyxWnO70
>>525
プロパティっぽいことは実現できてると思うんだけど、
いかんせん型が違うから、例えばstringのメンバ関数呼び出しは出来ないし
暗黙のキャストが効かない場面でエラーになるんじゃないかな
やっぱ言語でサポートしてくれないと限度がある

と思ったけどT.P + T.Pとかが通って吹いた
528デフォルトの名無しさん (ワッチョイ 9f6e-MWkS)
垢版 |
2017/12/13(水) 13:59:38.92ID:VOF5ieE50
リファレンサなんか大昔からみんなやってることじゃん
誰かがいみじくも言っていたようにカッコ1つ減らすためだけに
そんな馬鹿げた努力(言語の複雑化も含む)がしたいのか
2017/12/13(水) 15:06:44.35ID:QqhuUsRS6
努力はしたくないけど言語の複雑化は構わんなあ
もっと複雑な機能いっぱいあるし、プロパティなんてかわいいもんでしょ
2017/12/13(水) 15:21:57.42ID:VGyxWnO70
>>528
何を偉そうに言ってるのかわからんが、俺も似たようなことやってきた上で言ってる

カッコ1つ減らすためだけに、ってのはちょっと矮小化しすぎ
>>523がどのような意図でリンク貼ったのかはわからんけど、
最後の一文でプロパティ便利だなっつってる

本質はアクセス時に処理を差し挟めることだと思うんだが
クラステンプレートで仲介するのは、新しい型を定義することになるから
ものすごい遠回りになるし、どうしてもC++の型システムと相性が悪い

まぁ必須とは言わないけどあれば便利だなとは思う
531デフォルトの名無しさん (ワッチョイ 9f6e-MWkS)
垢版 |
2017/12/13(水) 16:32:25.04ID:VOF5ieE50
>>529
お前さんの理想は、お前さんが書くべきコードそのものが
コンパイラにビルトインで入っていることなんだろうな
すごい儲かりそうだね
532デフォルトの名無しさん (ワッチョイ 17b3-qmOZ)
垢版 |
2017/12/13(水) 19:43:44.26ID:YreXArfE0
[][][] [][][] [] [][][][] [][] [][][][][] [][] [][] [] [][][][][]
[] [][][][ [][][][][] [][ [][] [] [][][] [] [][][] []
[][][][] [] [] [][][][][][ [] [][][] [][] [][] []
2017/12/13(水) 20:46:34.93ID:SIeP7pZg0
>>527
えー?stringのメンバ呼べない?const参照してるだけだから呼べない道理はないはずだけど。
まぁ、マズそうなら一回static_castかませないとダメなんだっけ?うーむ。
まぁ、難しいことは考えずサンプルとして見てくれ。
2017/12/13(水) 21:13:48.92ID:S9dgblRYM
>>528
>>444へ戻る

バカはなぜか同じ話題を延々ループさせたがるんだよな w
2017/12/13(水) 21:31:45.92ID:VGyxWnO70
>>533
Test<std::string> T;
size_t a = T.P.size();
とかやった場合の話ね(もちろん明示・暗黙に関わらずキャストされたらいける

継承使えばメンバ関数もいけるだろうけど・・・・そうすると多分、スライシング等の問題が・・・・

そんなこんなでプロパティか、それに近い機能入ってもいんじゃね?と思っただけw
2017/12/13(水) 21:44:08.48ID:SIeP7pZg0
>>535
推論してくれないのか。そこまで便利にはできてないか。
ちょっとアイディア無いのでこれまでだな。
色々教えてくれてありがと。
2017/12/13(水) 22:11:05.97ID:uoR9h+SG0
つかな、使ってもないのに使用感を予想で語るの止めい。
そりゃ話がループする。
他言語には普通にあるんだし、使ってる奴のレポートを待てばいいんだよ。


利点は、フィールド←→メソッドを変更するときに、記述変更が少なくて済むことだ。
場合によっては戻すこともあるから、その時も助かる。
従って、アジャイルで既に動いているコードを変更しまくるときには便利だが、
ウォーターフォールで基本書いて終わりなら大してメリットはない。()が付くだけだ。

これとは別に、JavaScriptの場合はフィールドとメソッドを区別してないので、オーバーヘッド無しの遅延評価にも使える。
(プロパティ《関数ポインタ、ここで遅延評価する》をフィールド《遅延評価の結果》で直接上書きできる)
C++でこれをやる場合、オーバーヘッドが生じるし、そもそもメソッドコールでいい。

結果、C++には記述上のメリットしかなく、
これはIDEが進歩してリファクタリング出来るようになれば解消する話でもある。
だからそれを待つ、という作戦もありだろうし、
それ以前にIDE側のプリプロセッサでpropertyをサポートしてしまえ、ってのもありだと思う。
まあ、あれば便利程度で、あまり本質的ではない機能なのも事実だ。
2017/12/14(木) 00:16:08.20ID:Sy/1Y7rD0
お前がそう思うならそうなんだろう
お前の頭の中ではな
貴様の意見も机上の空論でしかない
2017/12/14(木) 00:18:30.33ID:NkgoJhJp0
そんなにつぶし合いしたいかね。
収集しようとしてるのに。
540デフォルトの名無しさん (ワッチョイ 926e-zS+j)
垢版 |
2017/12/14(木) 05:16:24.25ID:fPDEs5uN0
>>537
C++を他言語にしたがるやつはどこにでも湧くダニみたいなもんだ
#define begin {
#define end }
2017/12/14(木) 06:45:49.20ID:TMq/DGv/M
>>537
なぜ爺は終わった話をクドクド繰り返すのか
2017/12/14(木) 08:20:19.27ID:pBHCaQE50
c++でIF公開するときはメソッドに統一する、でおしまいの話なのにな。
2017/12/14(木) 09:02:11.18ID:pZXI1dL80
文句だらだらなら、GCCを自分で仕様を追加しちゃえよ!
544デフォルトの名無しさん (ワッチョイ 926e-zS+j)
垢版 |
2017/12/14(木) 09:19:33.65ID:fPDEs5uN0
かつて禿がcfrontを作ったようにか
2017/12/14(木) 09:28:38.36ID:GokG4kFPd
自分で仕様を追加したGCCとか>>540のマクロとたいして変わらんくない?
いや公式GCCにアクセプトされるなら話は別だけど
546デフォルトの名無しさん (ワッチョイ 926e-zS+j)
垢版 |
2017/12/14(木) 09:38:06.70ID:fPDEs5uN0
追加する仕様によるな
禿がCに「追加した」機能はマクロじゃ済まない
2017/12/14(木) 16:58:09.71ID:WeKtNL6id
そんなにプロパティ欲しいとは思わんが、単純な値操作ならメンバの参照返すメソッド作れば事足りるんじゃね?
それよりconst地獄ってホントにあるの?
const使いまくってて体感したことないんだけと。
548デフォルトの名無しさん (ワッチョイ 926e-zS+j)
垢版 |
2017/12/14(木) 17:04:38.91ID:fPDEs5uN0
メンバの参照を返したらprivateにしている意味が完全に失われるぞ
2017/12/14(木) 17:24:38.06ID:/7Md6pmo0
>>547
上流が const を渡してきたら、下流は逆らえない、ってことでは?
2017/12/14(木) 19:25:05.92ID:xcUKDly80
自作クラスのメンバ関数にconst全く付けてないタコが聞きかじりで中途半端に付け始めて
「メソッド呼べない!ムキー!このconstってやつ使えねー」ってパターンが大半だと思ってる
551デフォルトの名無しさん (ワッチョイ 1f7f-mLIQ)
垢版 |
2017/12/14(木) 19:27:31.22ID:gH71C6kZ0
const地獄になるってことはそのコードが間違ってるって事だからな
全部直せ
2017/12/14(木) 20:46:09.64ID:j4kcZFN2d
>>547
本気で言ってるなら、それは経験が足りない
2017/12/14(木) 20:54:50.42ID:5ihghoP20
副作用の少ないきれいな設計ならconstだらけになるはずだが
2017/12/14(木) 20:59:02.63ID:tSRk6cie0
>>553
これ
2017/12/14(木) 21:01:34.68ID:jk+byjKr0
No.1
1 2 3 4 5
2 3 4 5 6
No.2
1 2 3 4 5
2 2 2 2 2
3 3 3 3 3
No.3
3 4 5 6 7


No.n
というtxtファイルがあり。No.〇の次の行に整数が記入されている(何行あるかわからない)
整数の左からx1[ i ][ k ]、y1[ i ][ k ]、x2[ i ][ k ]、y2[ i ][ k ]、A[ i ][ k ]の配列にそれぞれ書き込み
もし次の行整数があればi+1をしまたそれぞれの配列に整数を書き込む
もし次の行に整数がなければ(No.の行)k+1を次の行にいき整数をそれぞれの配列に書き込む。
これをNo.nまで繰り返す。

このプログラムをfopenを使ってプログラムどなたかつくってくれませんかー?
2017/12/14(木) 21:33:16.59ID:x8KqPZST0
宿題くらい自力でこなせ脳筋
2017/12/14(木) 21:45:38.41ID:NkgoJhJp0
ヒント。
いずあるふぁっていう関数どっかにあるから、先頭にアルファベットがあったらスキップや。
それと宿題スレって落ちたの?
2017/12/14(木) 21:52:05.84ID:/7Md6pmo0
>>555
宿題スレへ
http://mevius.2ch.net/test/read.cgi/tech/1456908378/
2017/12/15(金) 00:18:39.45ID:sms7d93l0
const指定って下流が対応してないのに上流からやり始めるのは愚だよね
560デフォルトの名無しさん (ワッチョイ 92a6-ak+6)
垢版 |
2017/12/15(金) 09:14:14.38ID:2/eH7rfa0
>>559
どういう意味?
2017/12/15(金) 11:53:03.91ID:H37RU5hVM
プロパティよりも、deleteするとコンパイルエラーになるポインタが欲しい。
562デフォルトの名無しさん (ワッチョイ 926e-zS+j)
垢版 |
2017/12/15(金) 11:55:37.18ID:GBd6F7vt0
>>561
std::shared_ptr<int> a{std::make_shared<int>()};
delete a; //C2440
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。