次スレを立てる時は本文の1行目に以下を追加して下さい。
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part137
http://mevius.5ch.net/test/read.cgi/tech/1531558382/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.103【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1530384293/
■長いソースを貼るときはここへ。■
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
探検
C++相談室 part138
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (スフッ Sd9f-fGne)
2018/08/05(日) 18:02:36.57ID:DigzqJtZd420デフォルトの名無しさん (ワッチョイ 5f7c-Yj7W)
2019/09/26(木) 11:21:52.79ID:jZpo+Xv90 これはあくまで思想的な話で、ものすごく大まかに言えばOOは左翼的な思想に属してて
本当にこれでよいのか?という疑問は常に付きまとう
こんなものを使っていると頭がおかしくなるんじゃないかという
実際プログラマは精神病になりやすいイメージがあるし
OOに染まったプログラマの言うことは回りくどくて聞いてられない
実際頭おかしいでしょ
本当にこれでよいのか?という疑問は常に付きまとう
こんなものを使っていると頭がおかしくなるんじゃないかという
実際プログラマは精神病になりやすいイメージがあるし
OOに染まったプログラマの言うことは回りくどくて聞いてられない
実際頭おかしいでしょ
421デフォルトの名無しさん (ブーイモ MMcf-ZxQK)
2019/09/26(木) 12:51:41.19ID:GNqrTsXZM すっこんでろ
422デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/26(木) 14:06:22.33ID:+Tr9Y75r0423デフォルトの名無しさん (ワッチョイ 5f7c-Yj7W)
2019/09/26(木) 17:00:36.25ID:jZpo+Xv90 まぁ部品作るのには向いてると思うよOOは
ただ、部品なんてものは会社で言えば非正社員みたいなもので
そんなところに注力してもな
大事なのはそこじゃないからな
簡単なことをより簡単に出来るようにして
それ以外の難しいことに集中できるのがOOの利点か
ただ、部品なんてものは会社で言えば非正社員みたいなもので
そんなところに注力してもな
大事なのはそこじゃないからな
簡単なことをより簡単に出来るようにして
それ以外の難しいことに集中できるのがOOの利点か
424デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/26(木) 18:55:11.69ID:+Tr9Y75r0 >>423
カプセル化してユーティリティ作るにはクラス構造はかなり良い。
カプセル化してユーティリティ作るにはクラス構造はかなり良い。
425デフォルトの名無しさん (ワッチョイ e7da-ZxQK)
2019/09/26(木) 21:06:32.34ID:CMDn7Hom0 クラス分けはやっぱりデザインパターン見とけって感じなのね
どういうときに使えば便利かってのがいまだによくわからんのよなぁ
どういうときに使えば便利かってのがいまだによくわからんのよなぁ
426デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/26(木) 22:35:47.43ID:VMy+NeQU0 >>425
デザインパターンはゴミ。
ところでお前は何万行のコードを書いていてクラス分けが分からないの?
知りもしないのに嘘情報を垂れ流すのは止めろ。何の得にもならない。
お前はデザインパターンの有効性を判定出来るレベルではないだろ。
なら、その点については黙っておけ。
結果的に、お前らが知ったかぶりで嘘情報を流すからお前ら自身が迷惑を被るループになってる。
いい加減これに気づいてわきまえろ。
デザインパターンはゴミ。
ところでお前は何万行のコードを書いていてクラス分けが分からないの?
知りもしないのに嘘情報を垂れ流すのは止めろ。何の得にもならない。
お前はデザインパターンの有効性を判定出来るレベルではないだろ。
なら、その点については黙っておけ。
結果的に、お前らが知ったかぶりで嘘情報を流すからお前ら自身が迷惑を被るループになってる。
いい加減これに気づいてわきまえろ。
427デフォルトの名無しさん (ワッチョイ e77c-yXpG)
2019/09/27(金) 11:53:00.94ID:oLJPEcmZ0 >>デザインパターンはゴミ。
同意はするが
>知りもしないのに嘘情報を垂れ流すのは止めろ。何の得にもならない。
>お前はデザインパターンの有効性を判定出来るレベルではないだろ。
>なら、その点については黙っておけ。
>結果的に、お前らが知ったかぶりで嘘
ここまで言うならお前がクソ言う理由も書くべき
同意はするが
>知りもしないのに嘘情報を垂れ流すのは止めろ。何の得にもならない。
>お前はデザインパターンの有効性を判定出来るレベルではないだろ。
>なら、その点については黙っておけ。
>結果的に、お前らが知ったかぶりで嘘
ここまで言うならお前がクソ言う理由も書くべき
428デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/27(金) 18:46:28.25ID:uQlfggdX0 >>427
何についてだ?
425についてなら、糞だと自明でないお前も糞でしかないだろ。
むしろお前が425みたいなゴミを擁護する価値があると認めた理由を先に聞こうか。
それが妥当と判断したら、俺が425がゴミな理由を述べてやる。それでフェアだろ。
何についてだ?
425についてなら、糞だと自明でないお前も糞でしかないだろ。
むしろお前が425みたいなゴミを擁護する価値があると認めた理由を先に聞こうか。
それが妥当と判断したら、俺が425がゴミな理由を述べてやる。それでフェアだろ。
429デフォルトの名無しさん (ワッチョイ 0701-srNF)
2019/09/27(金) 21:02:00.04ID:7AQBen6M0 >クラス分けはやっぱりデザインパターン見とけって感じなのね
>どういうときに使えば便利かってのがいまだによくわからんのよなぁ
さすがにこれだけ読んでこいつがデザインパターンを過剰に持ち上げてるとは
ふつう思わんだろ。
普通に考えればよくわからんやつがよくわからんがやってみるかって言ってるだけの文章だろ。
>どういうときに使えば便利かってのがいまだによくわからんのよなぁ
さすがにこれだけ読んでこいつがデザインパターンを過剰に持ち上げてるとは
ふつう思わんだろ。
普通に考えればよくわからんやつがよくわからんがやってみるかって言ってるだけの文章だろ。
430デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/27(金) 21:35:59.08ID:uQlfggdX0 >>429
そもそもデザインパターンはクラス分けについての話ではない。
よって425は知らない癖にそれがさも「クラス分けに役立つ」と取れるような嘘情報を述べている。
もっとも、本人が積極的に嘘をついていると言うよりは、
過去誰かが425と同じようなことを書いたのを読んでいて、それを再度垂れ流しただけだと思うが、
それが425自身も既に嘘情報の垂れ流しループに組み込まれている証明となっている。
そして結果、自身も勘違いさせられ、また、勘違いした馬鹿を再生産して行っているわけだ。
そんなことは止めろ、と言っている。
過剰に持ち上げている事を咎めているのではない。
(というよりそもそも俺は過剰に持ち上げているとは捉えていない)
(結果的であれ、回避出来る)嘘情報を垂れ流すな、と言っている。
クラス分けについては、分からないのではなく、クラス分けが必要になる規模のコードを書いたことがないだけだ。
初心者は全員これだ。だから何度も規模を聞いている。
10行しか書けないのにクラス分けなんて分かるわけがない。全く必要ないからだ。
逆に、10,000行フラットに転がしてみろ。いやでもクラス分けが分かるようになる。
ただ最近の傾向として、425みたいな奴は増えている。
これは単純に、「ネットに書く」ということに関して前世代よりは若者世代の方が抵抗がないからだ。
だから知りもしないことをボソッとつぶやいたりしてしまう。そして本人に悪気があるわけでもない。
ただ、それでも間違った情報が拡散され、結果、それを読んだ奴が被害被るのもまた事実だ。
だから、知りもしない事柄についてはもうちょっと慎重に書け、ということでしかない。
同じ事はDeNAのキュレーションサイトでも起こったろ。
医者がうんちくや意見を(それなりに注意しながら)語るのはいいが、
医療知識が全くない奴がそれをコピペして適当に編集するからおかしな事になる。だから禁止された。
https://www.itmedia.co.jp/news/articles/1703/13/news114.html
同様に、プログラミングについての知識がない/まだまだ初心者の奴が知ったかぶって書くな、ということだ。
そして結果的にお前ら自身が被害を被っていることにも気づけ、ということ。
そもそもデザインパターンはクラス分けについての話ではない。
よって425は知らない癖にそれがさも「クラス分けに役立つ」と取れるような嘘情報を述べている。
もっとも、本人が積極的に嘘をついていると言うよりは、
過去誰かが425と同じようなことを書いたのを読んでいて、それを再度垂れ流しただけだと思うが、
それが425自身も既に嘘情報の垂れ流しループに組み込まれている証明となっている。
そして結果、自身も勘違いさせられ、また、勘違いした馬鹿を再生産して行っているわけだ。
そんなことは止めろ、と言っている。
過剰に持ち上げている事を咎めているのではない。
(というよりそもそも俺は過剰に持ち上げているとは捉えていない)
(結果的であれ、回避出来る)嘘情報を垂れ流すな、と言っている。
クラス分けについては、分からないのではなく、クラス分けが必要になる規模のコードを書いたことがないだけだ。
初心者は全員これだ。だから何度も規模を聞いている。
10行しか書けないのにクラス分けなんて分かるわけがない。全く必要ないからだ。
逆に、10,000行フラットに転がしてみろ。いやでもクラス分けが分かるようになる。
ただ最近の傾向として、425みたいな奴は増えている。
これは単純に、「ネットに書く」ということに関して前世代よりは若者世代の方が抵抗がないからだ。
だから知りもしないことをボソッとつぶやいたりしてしまう。そして本人に悪気があるわけでもない。
ただ、それでも間違った情報が拡散され、結果、それを読んだ奴が被害被るのもまた事実だ。
だから、知りもしない事柄についてはもうちょっと慎重に書け、ということでしかない。
同じ事はDeNAのキュレーションサイトでも起こったろ。
医者がうんちくや意見を(それなりに注意しながら)語るのはいいが、
医療知識が全くない奴がそれをコピペして適当に編集するからおかしな事になる。だから禁止された。
https://www.itmedia.co.jp/news/articles/1703/13/news114.html
同様に、プログラミングについての知識がない/まだまだ初心者の奴が知ったかぶって書くな、ということだ。
そして結果的にお前ら自身が被害を被っていることにも気づけ、ということ。
431デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/27(金) 21:36:17.08ID:uQlfggdX0 何度も言っているが、OOPは初心者が分かるものではないし、分かるべき物でもない。
それは単に、大規模コードを扱ったことがないからだ。
だから、その程度の奴らがOOPに対して何か書くこと自体が不適切なんだよ。
>>402みたいな糞も含めてな。理解出来てないのなら語るな、でしかない。
それは単に、大規模コードを扱ったことがないからだ。
だから、その程度の奴らがOOPに対して何か書くこと自体が不適切なんだよ。
>>402みたいな糞も含めてな。理解出来てないのなら語るな、でしかない。
432デフォルトの名無しさん (ワッチョイ 0701-srNF)
2019/09/27(金) 22:25:57.89ID:7AQBen6M0 >10行しか書けないのにクラス分けなんて分かるわけがない。全く必要ないからだ。
>逆に、10,000行フラットに転がしてみろ。いやでもクラス分けが分かるようになる。
これはまったくその通りだとは思うが、しかしその機会のない連中が
とりあえずデザインパターンやってみっかってのがそんな悪いこととも思わんがな。
過剰な反応に思う。
医療問題のような致命的な問題がデザインパターンやることで生じるとは思わん。
確かにデザインパターン魔がシングルトン振り回してグダグダにしてったという歴史はあるが
そういうアンチパターンも最近は紹介されとる。
それでもカスな知識を振り回す輩は結局何やってもカスなことをやる。
>逆に、10,000行フラットに転がしてみろ。いやでもクラス分けが分かるようになる。
これはまったくその通りだとは思うが、しかしその機会のない連中が
とりあえずデザインパターンやってみっかってのがそんな悪いこととも思わんがな。
過剰な反応に思う。
医療問題のような致命的な問題がデザインパターンやることで生じるとは思わん。
確かにデザインパターン魔がシングルトン振り回してグダグダにしてったという歴史はあるが
そういうアンチパターンも最近は紹介されとる。
それでもカスな知識を振り回す輩は結局何やってもカスなことをやる。
433デフォルトの名無しさん (ドコグロ MM7b-Gn+r)
2019/09/27(金) 22:28:30.87ID:rXwbxG7NM434デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/27(金) 23:03:44.15ID:uQlfggdX0 >>432
> しかしその機会のない連中が
だからこれがナンセンスだと言ってるんだよ。
OOPは大規模コードの整理術なのだから、
コードが大規模になったときにやればいいのであって、
逆に、大規模になったら、やる以外の選択肢はないんだよ。
(OOP文法を使うかどうかは別だが、「分割」はやるしかない。だからみんなやってる)
逆に、コードが精々500行程度、
つまり一般的なスクリプトの用途なら、OOPなんて一生必要ない。
だから知る必要もないし、また、この規模で適切に学ぶ方法もない。
つまり初心者レベルだとどうあがいても空回りする。
だから俺はグダグダ言わずにコードを書け、と言っている。
それがOOPが有効に機能する規模になれば、
余程馬鹿でない限り、自然に分かるようになる。それだけだ。
それはさておき、お前がサポートしたいのなら勝手にやればいい。
お前がデザインパターンを極めているつもりなら、422に講評つけてやれよ。
俺はお前らとは違う評価を付けている自信があるから、後出ししてやる。
もし俺と同じ評価をしている奴がいて、俺が何も言うことが無くなれば、俺の負けでいい。
(なお一応言っておくが、俺が賢いからではなく、
お前らが馬鹿(=下手)だから俺と同じ評価を付けられないだろう、と見ている。
つまり俺はお前らを技術的には数段下だと見ている。それを「負け」たら見直す、ということ。)
我こそは、と思う奴は422に講評付けてみろ。
俺を伸したがっている馬鹿共もかかって来いよ。チャンスだぜ。
> しかしその機会のない連中が
だからこれがナンセンスだと言ってるんだよ。
OOPは大規模コードの整理術なのだから、
コードが大規模になったときにやればいいのであって、
逆に、大規模になったら、やる以外の選択肢はないんだよ。
(OOP文法を使うかどうかは別だが、「分割」はやるしかない。だからみんなやってる)
逆に、コードが精々500行程度、
つまり一般的なスクリプトの用途なら、OOPなんて一生必要ない。
だから知る必要もないし、また、この規模で適切に学ぶ方法もない。
つまり初心者レベルだとどうあがいても空回りする。
だから俺はグダグダ言わずにコードを書け、と言っている。
それがOOPが有効に機能する規模になれば、
余程馬鹿でない限り、自然に分かるようになる。それだけだ。
それはさておき、お前がサポートしたいのなら勝手にやればいい。
お前がデザインパターンを極めているつもりなら、422に講評つけてやれよ。
俺はお前らとは違う評価を付けている自信があるから、後出ししてやる。
もし俺と同じ評価をしている奴がいて、俺が何も言うことが無くなれば、俺の負けでいい。
(なお一応言っておくが、俺が賢いからではなく、
お前らが馬鹿(=下手)だから俺と同じ評価を付けられないだろう、と見ている。
つまり俺はお前らを技術的には数段下だと見ている。それを「負け」たら見直す、ということ。)
我こそは、と思う奴は422に講評付けてみろ。
俺を伸したがっている馬鹿共もかかって来いよ。チャンスだぜ。
435デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/27(金) 23:55:19.48ID:9XlD8/+E0 72行程度の長文でさえしどろもどろなアホが
何がOOPの必要性だw
何がOOPの必要性だw
436デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/28(土) 00:07:57.26ID:aUCB7XSh0 デザインパターンは掃き溜めの鶴ではないか
何を言っているんだ
何を言っているんだ
437デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/28(土) 00:19:01.32ID:aUCB7XSh0438デフォルトの名無しさん (ブーイモ MMab-ZxQK)
2019/09/28(土) 00:21:20.58ID:nD8IZGftM 目的が不明なコードに講評だってさ
439デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 00:51:32.95ID:8mEfdn9E0 一応言っておくと、24時間は待つ。
状況によってはこの土日全部=48時間待ってもいい。
イキってるだけの馬鹿共はいい機会だから講評付けてみろ。
匿名なんだから失う物はないだろ。それが匿名掲示板の良さだ。
イキるだけだからお前らは馬鹿なままなんだよ。
イキる元気さをちゃんとプラスの方向に転化しろ。
イキっているのにここで参戦しないのはチキン過ぎるぜ。
デザインパターンを「言葉で」擁護するのではなく、「コードで」擁護してみせろ。
つまり、デザインパターンを極めたお前だからこそ書ける素晴らしいコードを提示し、
俺みたいにデザインパターンを馬鹿にしている奴との差を見せつけてみせろ。
>>438
ぼくはあのこーどがなにをするのかさっぱりわかりません、か。
はい、お前は負け決定。
そのレベルでイキってるからお前は馬鹿のままなんだよ。少しは自覚しろ。
状況によってはこの土日全部=48時間待ってもいい。
イキってるだけの馬鹿共はいい機会だから講評付けてみろ。
匿名なんだから失う物はないだろ。それが匿名掲示板の良さだ。
イキるだけだからお前らは馬鹿なままなんだよ。
イキる元気さをちゃんとプラスの方向に転化しろ。
イキっているのにここで参戦しないのはチキン過ぎるぜ。
デザインパターンを「言葉で」擁護するのではなく、「コードで」擁護してみせろ。
つまり、デザインパターンを極めたお前だからこそ書ける素晴らしいコードを提示し、
俺みたいにデザインパターンを馬鹿にしている奴との差を見せつけてみせろ。
>>438
ぼくはあのこーどがなにをするのかさっぱりわかりません、か。
はい、お前は負け決定。
そのレベルでイキってるからお前は馬鹿のままなんだよ。少しは自覚しろ。
440デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/28(土) 01:24:50.38ID:xM8alBMg0441デフォルトの名無しさん (ドコグロ MM7f-Gn+r)
2019/09/28(土) 01:28:35.64ID:adXsKLupM イキってるって言いたいだけやん…
てか本人が一番イキってるしw
てか本人が一番イキってるしw
442デフォルトの名無しさん (ワッチョイ 5f52-k+Ie)
2019/09/28(土) 05:58:28.49ID:DGAUo+960443デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 07:59:27.08ID:atv/D1Wn0 酔っ払いの独り言は誰も面白いと思っていない
駅前で不特定多数を叱り飛ばしている危ないオヤジと同じだ
駅前で不特定多数を叱り飛ばしている危ないオヤジと同じだ
444デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 10:11:46.22ID:EwMBvois0 >>419
それは一理ある。実際、
自分の場合、1つのアプリの場合、ほとんどのclass メンバをpublicにしてる
場合がある。
しかし、class 分けすることで new CXxxx としただけで同じ種類のオブジェクトが
簡単に作成できる事や、似た働きを基礎に持っているが、基礎を発展させた応用的な
オブジェクトや同じ系統だが少しずつ働きの違うオブジェクトを、共通の基礎部分を
CBase クラスで書いておいて、それを継承したクラスで書ける事が便利になる。
だから、内部データにはアクセス禁止という意味でのカプセル化は達成したくても
なかなか達成できない事があるが、上記の様な意味で便利に使えてる。
それは一理ある。実際、
自分の場合、1つのアプリの場合、ほとんどのclass メンバをpublicにしてる
場合がある。
しかし、class 分けすることで new CXxxx としただけで同じ種類のオブジェクトが
簡単に作成できる事や、似た働きを基礎に持っているが、基礎を発展させた応用的な
オブジェクトや同じ系統だが少しずつ働きの違うオブジェクトを、共通の基礎部分を
CBase クラスで書いておいて、それを継承したクラスで書ける事が便利になる。
だから、内部データにはアクセス禁止という意味でのカプセル化は達成したくても
なかなか達成できない事があるが、上記の様な意味で便利に使えてる。
445デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 10:16:07.55ID:EwMBvois0 >>435
それは思う。
それは思う。
446デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 10:22:21.06ID:EwMBvois0 >>444
補足しておくと、protected に出来るメンバはできるだけ protectedにしている。
例えば、ポインタで保持している何らかのデータなどは、ちょっとしたことで
間違って削除してしまう可能性があるので、そこにデータを書いたり、
ポインタが指す先を付け替えたりする関数は出来る限り protected にしてる。
そして、それはなるべく基本クラスの方にくくり出す。もし、別の関数でも
これと同じような処理が必要になったら、既にある関数を組み合わせてなんとか
ならないかを考える。そうすることで、ポインタのつけ間違いや誤ったオブジェクトの
削除を防ぐことが出来る。
ポインタ以外でも、データの整合性に関して慎重さが必要な場合は、上記と
同じようなことをやっている。
補足しておくと、protected に出来るメンバはできるだけ protectedにしている。
例えば、ポインタで保持している何らかのデータなどは、ちょっとしたことで
間違って削除してしまう可能性があるので、そこにデータを書いたり、
ポインタが指す先を付け替えたりする関数は出来る限り protected にしてる。
そして、それはなるべく基本クラスの方にくくり出す。もし、別の関数でも
これと同じような処理が必要になったら、既にある関数を組み合わせてなんとか
ならないかを考える。そうすることで、ポインタのつけ間違いや誤ったオブジェクトの
削除を防ぐことが出来る。
ポインタ以外でも、データの整合性に関して慎重さが必要な場合は、上記と
同じようなことをやっている。
447デフォルトの名無しさん (アウアウカー Sa9b-4W5P)
2019/09/28(土) 11:00:36.13ID:LlqNH2NPa >>444
structで良いじゃん
structで良いじゃん
448デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 11:38:05.06ID:EwMBvois0 >>447
純粋な構造体なら struct にして、名称も TXxxx にしている。
一方、メンバ関数があるものについては、原則的に必ず classにしている。
理由は、クラス定義を grep 検索する祭、必ず class CXxxx をキーワード
にすればよくなるから。これがもし、一部でも struct CXxxx というものが
混じっているなら class CXxxx では見落としてしまうことになる。
型名の頭文字が T の場合は、struct TXxxx と検索する。
純粋な構造体なら struct にして、名称も TXxxx にしている。
一方、メンバ関数があるものについては、原則的に必ず classにしている。
理由は、クラス定義を grep 検索する祭、必ず class CXxxx をキーワード
にすればよくなるから。これがもし、一部でも struct CXxxx というものが
混じっているなら class CXxxx では見落としてしまうことになる。
型名の頭文字が T の場合は、struct TXxxx と検索する。
449デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 11:40:37.11ID:EwMBvois0 >>448
それから、その時はたまたま public: 属性ばかりなだけで、
後から protected: 属性のメンバもできてくる可能性も有るから、
純粋なデータ構造体以外は、必ず class に統一することにしている。
それから、その時はたまたま public: 属性ばかりなだけで、
後から protected: 属性のメンバもできてくる可能性も有るから、
純粋なデータ構造体以外は、必ず class に統一することにしている。
450デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 11:50:17.24ID:atv/D1Wn0 システムハンガリアンにしがみついてる化石w
451デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 12:22:40.96ID:X/zAGzhO0 MSVCはstructとclassの扱いが違う糞
452デフォルトの名無しさん (ワッチョイ 5f6e-kLFp)
2019/09/28(土) 14:13:38.93ID:LuoDMBWx0 >>451
どう違う?
どう違う?
453デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 14:15:56.72ID:X/zAGzhO0 宣言と定義で変えたらlink出来ない
454デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 14:23:25.73ID:atv/D1Wn0 んなことするやつこそ糞だと思うが
455デフォルトの名無しさん (ワッチョイ bfad-S/NQ)
2019/09/28(土) 14:31:07.26ID:zNn3MVf20 コンパイラによる解釈の違いを「そうきたか」と微笑みつつ解決するも楽しいものだよ。
456デフォルトの名無しさん (オイコラミネオ MM1f-NfUm)
2019/09/28(土) 14:50:38.12ID:CrZkyiYlM >>453
デフォルトのアクセス修飾子違うんだから当たり前じゃないのそれ
デフォルトのアクセス修飾子違うんだから当たり前じゃないのそれ
457デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 15:09:19.89ID:EwMBvois0 >>456
そういえばそうだね。
そういえばそうだね。
458デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 15:18:29.76ID:X/zAGzhO0 >>456
宣言にデフォルトのアクセス修飾子関係ないだろ
宣言にデフォルトのアクセス修飾子関係ないだろ
459デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 15:27:08.75ID:EwMBvois0 >>458
一見そう思うかもしれないが、
class/struct の完全定義で、public: や protected: などを全く書かずにいきなり最初の
部分に書いたメンバに対しては関係ある。
本来の設計では class Aaaa だったのに、使う人が struct Aaaa で宣言してしまうと
Aaaa の完全定義の最初の部分に書いたメンバは、本来は private 属性で禁止されていた
はずなのに、使う側ではアクセスできてしまうことになる。
一見そう思うかもしれないが、
class/struct の完全定義で、public: や protected: などを全く書かずにいきなり最初の
部分に書いたメンバに対しては関係ある。
本来の設計では class Aaaa だったのに、使う人が struct Aaaa で宣言してしまうと
Aaaa の完全定義の最初の部分に書いたメンバは、本来は private 属性で禁止されていた
はずなのに、使う側ではアクセスできてしまうことになる。
460デフォルトの名無しさん (ワッチョイ 07b0-S/NQ)
2019/09/28(土) 15:35:18.31ID:urQdgSwI0 >>453が言っているのは異なるコンパイル単位で別の定義を使うという話じゃなくて宣言と定義だろ?
461デフォルトの名無しさん (オイコラミネオ MM1f-NfUm)
2019/09/28(土) 16:05:06.02ID:CrZkyiYlM こういうケースの話だとは思うけど
struct A;
class A
{
int a;
};
コンパイラがどう解釈するかは決まってるのかなこれ
struct A;
class A
{
int a;
};
コンパイラがどう解釈するかは決まってるのかなこれ
462デフォルトの名無しさん (ワッチョイ c71f-n9TO)
2019/09/28(土) 16:07:59.85ID:YjLwj0vT0 エラー出すんじゃないの?
463デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/28(土) 16:38:02.11ID:E6lKnilk0 c++17のfilesystemで、windowsの「マイドキュメント」とか展開するときってどうやるん?
自分は、日和ってWindowsの関数使ったんだけど。
自分は、日和ってWindowsの関数使ったんだけど。
464デフォルトの名無しさん (ワッチョイ 5f01-ZxQK)
2019/09/28(土) 17:06:13.76ID:xM8alBMg0 >>459
リンクって何やる処理かご存知?
リンクって何やる処理かご存知?
465デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/28(土) 18:27:19.82ID:E6lKnilk0 C++のclassとstructの違いはデフォルトのアクセス権が、
class : private
struct : public
ということでしかなくて、アクセス権を追加するのは両方できる。
さらに継承もできる。
class : private
struct : public
ということでしかなくて、アクセス権を追加するのは両方できる。
さらに継承もできる。
466デフォルトの名無しさん (ワッチョイ 5f7c-5975)
2019/09/28(土) 18:44:36.11ID:dulQ4DqV0 継承の時デフォルトがpublicかprivateかもあったような?
467デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/28(土) 18:50:19.34ID:E6lKnilk0 >>466
それは、クラスはprivateで、構造体はpublicで継承されたと思う。基本値として。
それは、クラスはprivateで、構造体はpublicで継承されたと思う。基本値として。
468デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 18:53:35.09ID:X/zAGzhO0 >>461
決まっている
規格上は宣言時structだろうがclassだろうが完全に同じ扱い
msvcは同一コンパイル単位では警告出してくるし、別れているとマングリングが変わるせいで引数にポインタや参照が含まれる関数などがある場合、linkが出来なくなる
決まっている
規格上は宣言時structだろうがclassだろうが完全に同じ扱い
msvcは同一コンパイル単位では警告出してくるし、別れているとマングリングが変わるせいで引数にポインタや参照が含まれる関数などがある場合、linkが出来なくなる
469デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 19:44:13.97ID:atv/D1Wn0 classで宣言したものを、
わざわざstructで定義する必要性って
どんな時に出てくるんだ?
関数の仮引数を[]で宣言して
わざわざ*で定義する必要性なら
まあ出てくることもあるが
わざわざstructで定義する必要性って
どんな時に出てくるんだ?
関数の仮引数を[]で宣言して
わざわざ*で定義する必要性なら
まあ出てくることもあるが
470デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 19:51:09.64ID:8mEfdn9E0471デフォルトの名無しさん (ワッチョイ 5f6e-kLFp)
2019/09/28(土) 20:23:29.91ID:LuoDMBWx0 アンチMSにとっては挙動が他と少しでも違えば気に入らないんだろうさ
472デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 21:37:11.39ID:lqPuvWRw0473デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 21:47:31.84ID:X/zAGzhO0474デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 22:00:22.50ID:8mEfdn9E0 >>473
そういう問題ではなくて、
静的言語のメリットは、プログラマの明確な間違い=タイポや型違いをコンパイル時に落とせる事でもあるだろ。
structとclassを間違えているのならコンパイルエラーにすべき、というのがお前以外の他全員だと思うが。
そういうどうでもいいところにこだわりすぎてるから上達してないのだと思うぞ。
そういう問題ではなくて、
静的言語のメリットは、プログラマの明確な間違い=タイポや型違いをコンパイル時に落とせる事でもあるだろ。
structとclassを間違えているのならコンパイルエラーにすべき、というのがお前以外の他全員だと思うが。
そういうどうでもいいところにこだわりすぎてるから上達してないのだと思うぞ。
475デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/28(土) 22:02:55.72ID:E6lKnilk0 勝手に総意を語らないでください。
structとclassは同じ文脈で使われることもそれなりにあるので、
どう判断したら文脈的に正しいと思いますか?
structとclassは同じ文脈で使われることもそれなりにあるので、
どう判断したら文脈的に正しいと思いますか?
476デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 22:12:35.78ID:8mEfdn9E0 >>475
まあお前の意見が違うのは分かった。
普通の人は、VCの動作で全く問題ないと思うが。
実際誰も擁護もしないし、必要性もないだろ。
逆にstructとclassを混ぜてる糞ソースでドヤア出来る感覚は頭おかしいと思うが。
まあお前の意見が違うのは分かった。
普通の人は、VCの動作で全く問題ないと思うが。
実際誰も擁護もしないし、必要性もないだろ。
逆にstructとclassを混ぜてる糞ソースでドヤア出来る感覚は頭おかしいと思うが。
477デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/28(土) 22:23:14.45ID:xM8alBMg0 間違いで起きるかそれ?
それが起きるとしたら、同名だけど中身が全く違うものをincludeしてる状態だろ
class/sturctの違いだけ気づけてもありがたみない
それが起きるとしたら、同名だけど中身が全く違うものをincludeしてる状態だろ
class/sturctの違いだけ気づけてもありがたみない
478デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 22:34:45.68ID:8mEfdn9E0 >>477
間違いではなくて、
書いてる本人が同じ物にstructとclassを混ぜて使っており、
その本人がそれでいいと思っているケースだろ。
少なくとも ID:X/zAGzhO0 と ID:E6lKnilk0 はそうなんだろ。
> 同名だけど中身が全く違うものをincludeしてる状態
これはほぼ間違いなくコンパイルエラーで落ちるから、それで問題ないと思うが。
間違いではなくて、
書いてる本人が同じ物にstructとclassを混ぜて使っており、
その本人がそれでいいと思っているケースだろ。
少なくとも ID:X/zAGzhO0 と ID:E6lKnilk0 はそうなんだろ。
> 同名だけど中身が全く違うものをincludeしてる状態
これはほぼ間違いなくコンパイルエラーで落ちるから、それで問題ないと思うが。
479デフォルトの名無しさん (ワッチョイ 7f7b-Z/MO)
2019/09/28(土) 22:44:30.75ID:2zqklXVt0 警告出されないほうが困る事のが多そうだけどな
どっちで定義するつもりだったのかわからんもん
どっちで定義するつもりだったのかわからんもん
480デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 22:49:07.22ID:lqPuvWRw0 C++では、constが付いているかいないかでも、関数のmangling名が
違うので、リンク段階でエラーが出る。
こっちのエラーも余り深く考えたことが無いけれど、似たような意味で
structとclassが違っていればリンク段階でエラーになるようになっている
気がする。つまり、const属性の違いの混乱が起きていてもエラーになるが、
似たような意味でアクセス属性の違いでもエラーになるようになっている。
普通、ライブラリに対応するヘッダファイルを正しく #include していれば、
このような現象は生じないが、新しく追加された関数のプロトタイプ宣言が
無い場合に自分で、ネットにあったプロトタイプ宣言をコピーしてきたような
場合にconst属性の違いが生じることがあるかも。
それと同様に、自分で作ってるアプリの *.cpp と *.h で、勘違いして
class型の完全定義をstruct型で不完全定義してしまっているとか。
そういうのは中身まで間違っていることもあるので、リンク段階でエラーになった
方が、原因不明のエラーを防ぐのに有効だと思われる。
違うので、リンク段階でエラーが出る。
こっちのエラーも余り深く考えたことが無いけれど、似たような意味で
structとclassが違っていればリンク段階でエラーになるようになっている
気がする。つまり、const属性の違いの混乱が起きていてもエラーになるが、
似たような意味でアクセス属性の違いでもエラーになるようになっている。
普通、ライブラリに対応するヘッダファイルを正しく #include していれば、
このような現象は生じないが、新しく追加された関数のプロトタイプ宣言が
無い場合に自分で、ネットにあったプロトタイプ宣言をコピーしてきたような
場合にconst属性の違いが生じることがあるかも。
それと同様に、自分で作ってるアプリの *.cpp と *.h で、勘違いして
class型の完全定義をstruct型で不完全定義してしまっているとか。
そういうのは中身まで間違っていることもあるので、リンク段階でエラーになった
方が、原因不明のエラーを防ぐのに有効だと思われる。
481デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 22:50:49.47ID:atv/D1Wn0 structとclassで多重定義できるべきとでも言いたいのか?
482デフォルトの名無しさん (ワッチョイ 07b0-S/NQ)
2019/09/28(土) 22:51:32.96ID:urQdgSwI0 コードスメル的な問題はあるとしても実害は考えられないのでは?
483デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/28(土) 22:54:02.47ID:xM8alBMg0 で、VCの仕様で助かった経験のある人いんの?
class/structの違いは単なる表面的なsyntaxの違いでしかないと理解するのは自然
それが実はバイナリに影響してるってのはいらぬ驚き
という主張はおれはわかる
別にVCの仕様がおかしいとは言わないが何か防御に役立つとは思えない
class/structの違いは単なる表面的なsyntaxの違いでしかないと理解するのは自然
それが実はバイナリに影響してるってのはいらぬ驚き
という主張はおれはわかる
別にVCの仕様がおかしいとは言わないが何か防御に役立つとは思えない
484デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 22:57:28.76ID:8mEfdn9E0485デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/28(土) 22:59:07.82ID:E6lKnilk0 自分のポリシーとしては、
構造体は変数のブロック用程度にしか考えないし、ユーティリティ作るときはclass使う。
だから、構造体使うときは、アラインとか気を使う。クラスはどうでもいい。
構造体は変数のブロック用程度にしか考えないし、ユーティリティ作るときはclass使う。
だから、構造体使うときは、アラインとか気を使う。クラスはどうでもいい。
486デフォルトの名無しさん (ワッチョイ 077b-88hv)
2019/09/28(土) 23:00:07.72ID:8mEfdn9E0 >>483
むしろお前は混ぜていい仕様で助かっているのか?
むしろお前は混ぜていい仕様で助かっているのか?
487デフォルトの名無しさん (ワッチョイ 7f7b-Z/MO)
2019/09/28(土) 23:00:21.59ID:2zqklXVt0 本来privateであるべきところがpublicになっててアクセスできるのは起こり得るんじゃないの
>>483
混ぜる必要がないし混ざらないほうがいいと思うけど
まず宣言と定義でごっちゃになることがないから実害食らったひとはいなさそうだけど
>>483
混ぜる必要がないし混ざらないほうがいいと思うけど
まず宣言と定義でごっちゃになることがないから実害食らったひとはいなさそうだけど
488デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/28(土) 23:02:53.00ID:atv/D1Wn0 >>486
ニホンゴワカリマスカ?
ニホンゴワカリマスカ?
489デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 23:03:40.64ID:X/zAGzhO0 >>459
こそ勘違いの最足るものだろうに
structとclassは定義時のデフォルトがpublicになるか否か以外言語仕様上違いが無いんだよ
struct A;
class A;
どちらもクラスAの宣言
こそ勘違いの最足るものだろうに
structとclassは定義時のデフォルトがpublicになるか否か以外言語仕様上違いが無いんだよ
struct A;
class A;
どちらもクラスAの宣言
490デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/28(土) 23:03:45.92ID:xM8alBMg0491デフォルトの名無しさん (アウアウカー Sa9b-4W5P)
2019/09/28(土) 23:08:03.45ID:LlqNH2NPa 前方宣言でclassとstructを変えることによるメリットは?
492デフォルトの名無しさん (ワッチョイ 0701-srNF)
2019/09/28(土) 23:08:10.20ID:eyOXXdxS0 こんな糞議論しなきゃならん時点で有害だわ
493デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 23:11:12.80ID:X/zAGzhO0 むしろ合わせなきゃいけない意味がわからん
他人のカスタマイズ用のtemplate classでそれがclassだったかstructだったかを正しく覚えてなきゃいけないとか
他人のカスタマイズ用のtemplate classでそれがclassだったかstructだったかを正しく覚えてなきゃいけないとか
494デフォルトの名無しさん (ワッチョイ 5f77-4W5P)
2019/09/28(土) 23:15:06.74ID:y4xgEID10 使うだけならclassかstructか書く必要ないし修正を加えるなら必然的にソースコード見るだろ
495デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/28(土) 23:20:24.74ID:X/zAGzhO0 いやだから特殊化するときだって
496デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/28(土) 23:39:09.23ID:lqPuvWRw0 Aaaa を完全定義をする前に Aaaa 型へのポインタを宣言したい場合に不完全定義として
struct Aaaa;
としておき、後から完全定義として
class Aaaa {
int data1; // class なのでデフォルトのアクセス属性は private 属性。
・・・
};
を与えた時、struct と class の違いでエラーにするかどうかの議論ですね。
そして、完全定義したときにだけしか、デフォルトのアクセス制御の public/private の違いは
出てこないので、エラーにする必要が特に無い、という説が出てきていると。
struct Aaaa;
としておき、後から完全定義として
class Aaaa {
int data1; // class なのでデフォルトのアクセス属性は private 属性。
・・・
};
を与えた時、struct と class の違いでエラーにするかどうかの議論ですね。
そして、完全定義したときにだけしか、デフォルトのアクセス制御の public/private の違いは
出てこないので、エラーにする必要が特に無い、という説が出てきていると。
497デフォルトの名無しさん (ワッチョイ 5f6e-kLFp)
2019/09/28(土) 23:52:31.71ID:LuoDMBWx0 極めてくだらない話題だね
498デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/29(日) 00:41:54.75ID:7gP8emxb0499デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/29(日) 00:42:57.02ID:7gP8emxb0 名前が衝突した異なる型として
500デフォルトの名無しさん (アウアウウー Sa8b-Sxlc)
2019/09/29(日) 00:49:05.52ID:sIVLKl19a ちょっと関係ある話なんだけどマングリングていう単語、なんかちょっとエロ要素あるよね
501デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/29(日) 01:54:53.34ID:hPYugyVf0 pimpleやるときは前方宣言無いと辛いと思う。
502デフォルトの名無しさん (ワッチョイ c7e8-upKm)
2019/09/29(日) 02:00:50.57ID:hPYugyVf0 前方宣言でclassとstructが違うとユーザーコード書くとき気持ち悪くね?
503デフォルトの名無しさん (ワッチョイ 47f6-rP+5)
2019/09/29(日) 07:26:51.75ID:MP9GBJ110 ピンプるときは宣言を書いたのと同一人物が定義も書くだろ
そこで間違えるとしたら相当に頓馬なやつだぞ
自分の癖さえ忘れるのは認知症だぜ
# hashを特殊化するときなんかは間違えないように気をつけている
そこで間違えるとしたら相当に頓馬なやつだぞ
自分の癖さえ忘れるのは認知症だぜ
# hashを特殊化するときなんかは間違えないように気をつけている
504デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/29(日) 09:31:02.95ID:sih8o/+S0 >>498
むしろ、完全定義されていない限りメンバ関数もメンバ変数も何一つ
使えないために、private/publicのデフォルト・アクセス属性の違いの
影響がでないからこそ、完全定義より前の不完全定義は、structと
classの違いを問わないでいいとも考えられる。
むしろ、完全定義されていない限りメンバ関数もメンバ変数も何一つ
使えないために、private/publicのデフォルト・アクセス属性の違いの
影響がでないからこそ、完全定義より前の不完全定義は、structと
classの違いを問わないでいいとも考えられる。
505デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/29(日) 12:45:52.46ID:7gP8emxb0 >>504
型付き言語は型に関するプログラマーの間違いを指摘するのが優先
型推論が行えるときに型推論してタイピング量を減らせる手段「も」提供するのが第二優先
この優先順序を取り違えて良いものなら型無し言語を選択するほうが合理的である
つまり型付き言語のコンパイラーが型の誤り(デフォルト公開属性がpublicなstructとprivateなclass間の誤り)を
許すような振る舞いをするのは、現実に問題にならないとしても、道理に合わない
型の名前だけ宣言したくてclassかstructかの違いはどうでも良いなら、そういう意味のキーワードが用意されるべきなんじゃ
型付き言語は型に関するプログラマーの間違いを指摘するのが優先
型推論が行えるときに型推論してタイピング量を減らせる手段「も」提供するのが第二優先
この優先順序を取り違えて良いものなら型無し言語を選択するほうが合理的である
つまり型付き言語のコンパイラーが型の誤り(デフォルト公開属性がpublicなstructとprivateなclass間の誤り)を
許すような振る舞いをするのは、現実に問題にならないとしても、道理に合わない
型の名前だけ宣言したくてclassかstructかの違いはどうでも良いなら、そういう意味のキーワードが用意されるべきなんじゃ
506デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/29(日) 12:53:43.24ID:C35/CdkS0 classに関するc++の言語仕様とそのグレーゾーンのコンパイラ依存の話であって
型付き言語のあるべき論語ったところでしょうがないでしょ
本来言語仕様でstructとclassは型的に同じか否かが明言されてればそれで終了の話
道理はどちらでも通る
型付き言語のあるべき論語ったところでしょうがないでしょ
本来言語仕様でstructとclassは型的に同じか否かが明言されてればそれで終了の話
道理はどちらでも通る
507デフォルトの名無しさん (ワッチョイ c7c3-+MBy)
2019/09/29(日) 13:01:37.41ID:OYiClG3B0 言語仕様上は同じであることが明記されているし、それは書籍やweb上でも触れられている
重箱の隅ではなく常識として理解していたのだが
同じだと覚えて、その通りに使ったのに、msvcに移植する段になって奇妙な現象として実体化するのが問題
重箱の隅ではなく常識として理解していたのだが
同じだと覚えて、その通りに使ったのに、msvcに移植する段になって奇妙な現象として実体化するのが問題
508デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/29(日) 13:14:20.90ID:7gP8emxb0 >>506
>classに関するc++の言語仕様とそのグレーゾーンのコンパイラ依存の話
non
カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
デフォルト公開属性がpublicなstructと
デフォルト公開属性がprivateなclassをad-hocに同一視するええかげんな体系が有り得るのかという話
同一視する意図が無くかつ名前だけの前方宣言をしたいならば、名前だけ宣言する意味のキーワードでやれば無問題
無理矢理別の意味がまとわりついたキーワードを流用するのでは
コンパイラもコードを書いたプログラマーも表現を全うしたことにならず気持ち悪かろう
>classに関するc++の言語仕様とそのグレーゾーンのコンパイラ依存の話
non
カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
デフォルト公開属性がpublicなstructと
デフォルト公開属性がprivateなclassをad-hocに同一視するええかげんな体系が有り得るのかという話
同一視する意図が無くかつ名前だけの前方宣言をしたいならば、名前だけ宣言する意味のキーワードでやれば無問題
無理矢理別の意味がまとわりついたキーワードを流用するのでは
コンパイラもコードを書いたプログラマーも表現を全うしたことにならず気持ち悪かろう
509デフォルトの名無しさん (ワッチョイ 5f3d-HmT3)
2019/09/29(日) 13:15:48.60ID:7gP8emxb0510デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/29(日) 13:17:48.47ID:C35/CdkS0 >>508
gcc/clangでは通ること把握してるか?
gcc/clangでは通ること把握してるか?
511デフォルトの名無しさん (ワッチョイ 5f01-S/NQ)
2019/09/29(日) 13:29:13.33ID:C35/CdkS0 >>508
> カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
なんかお前は大きな勘違いしてる気がしてならないんだけど
前方宣言でclassと書こうかstructと書こうがカプセル化に何も影響ないだろ
なにがサボリなんだ?
classのかわりにstructと書いたらむしろ1文字多いのだが
> カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
なんかお前は大きな勘違いしてる気がしてならないんだけど
前方宣言でclassと書こうかstructと書こうがカプセル化に何も影響ないだろ
なにがサボリなんだ?
classのかわりにstructと書いたらむしろ1文字多いのだが
512デフォルトの名無しさん (ワッチョイ bfad-S/NQ)
2019/09/29(日) 13:32:40.67ID:qbYXpMyS0 C++例外の功罪について騙りたい。
513デフォルトの名無しさん (ワッチョイ 5f52-k+Ie)
2019/09/29(日) 13:37:04.22ID:k4CvVXqN0 >>512
語るのはいいが騙るなよ
語るのはいいが騙るなよ
514デフォルトの名無しさん (ワッチョイ 5f52-k+Ie)
2019/09/29(日) 13:39:29.17ID:k4CvVXqN0 >>508
C/C++には安易に予約語を増やさないというポリシーがあったと思うし、こんなレアで下らない例外ケースのために予約語を増やすのは賛同されないだろうよ。
C/C++には安易に予約語を増やさないというポリシーがあったと思うし、こんなレアで下らない例外ケースのために予約語を増やすのは賛同されないだろうよ。
515デフォルトの名無しさん (ワッチョイ 5ff9-kLFp)
2019/09/29(日) 13:40:32.98ID:eQVILPNx0 >言語仕様上は同じであることが明記されているし、
これが本当なら、とっくに規格厨が該当箇所を引用してくれてそうなんだけど
これが本当なら、とっくに規格厨が該当箇所を引用してくれてそうなんだけど
516デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/29(日) 13:54:55.39ID:sih8o/+S0 >>508
>カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
不完全定義の主な目的は完全定義をサボるためではありません。
自己参照や、2つの構造体 A, B が有った場合、お互いに互い違い
に参照したい場合にどうしても必要だったので、pure C の時代から用意されて
いました。なお、ここでの参照とは、ポインタ * による参照です。pure C の
時代には、C++の & による参照はありませんでしたので。
>カプセル化の遵守を口にしつつ、前方宣言の記述をちょっとサボりたいがだけのために
不完全定義の主な目的は完全定義をサボるためではありません。
自己参照や、2つの構造体 A, B が有った場合、お互いに互い違い
に参照したい場合にどうしても必要だったので、pure C の時代から用意されて
いました。なお、ここでの参照とは、ポインタ * による参照です。pure C の
時代には、C++の & による参照はありませんでしたので。
517デフォルトの名無しさん (ワッチョイ 071a-kLFp)
2019/09/29(日) 13:58:57.67ID:UVnMNq400 https://timsong-cpp.github.io/cppwp/n4659/dcl.type.elab#3
> ..., the union class-key shall be used to refer to a union, and either the class or struct class-key shall be used to refer to a class declared using the class or struct class-key.
> ..., the union class-key shall be used to refer to a union, and either the class or struct class-key shall be used to refer to a class declared using the class or struct class-key.
518デフォルトの名無しさん (ワッチョイ 5f61-81Gp)
2019/09/29(日) 14:12:32.56ID:sih8o/+S0519デフォルトの名無しさん (ワッチョイ 5f01-Gn+r)
2019/09/29(日) 14:21:31.78ID:qdFsd7WD0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 [蚤の市★]
- 東京都「都民の税金1.5兆円が国に奪われている」「全国に分配されている」に地方民ブチギレ [Hitzeschleier★]
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★4 [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ [蚤の市★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 石破に後ろから鉄砲やめろ!て言う人いるじゃん?石破政権時の石破降ろしには後ろ撃ちと批判しなかったのはなぜ [472617201]
- はいはい
- トランプ、G7に代わるcore 5を発表 [805596214]
- 【悲報】麻生太郎さん、オムツをしていた。晋さん…ここにいたんだね… [731544683]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★5
