次スレを立てる時は本文の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
C++相談室 part133
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 1fcf-H1rY)
2017/11/24(金) 16:52:50.43ID:WoNXR2ax0428デフォルトの名無しさん (ワッチョイ bfe7-F7Qh)
2017/12/10(日) 12:17:16.01ID:dE7pgqu30 >>426
前景色をいつでも外部から独立に変えて良いオブジェクトならそれで構わないけど
それをforeColorメンバ変数があってそのsetterだから〜みたいな程度の低い議論で決めたんだとしたら
後で大変な苦労をすることになるだろうな
今のお前はしなくてもお前の同僚やユーザーや1年後のお前がな
前景色をいつでも外部から独立に変えて良いオブジェクトならそれで構わないけど
それをforeColorメンバ変数があってそのsetterだから〜みたいな程度の低い議論で決めたんだとしたら
後で大変な苦労をすることになるだろうな
今のお前はしなくてもお前の同僚やユーザーや1年後のお前がな
429デフォルトの名無しさん (ワッチョイ 9fbd-aiou)
2017/12/10(日) 12:22:05.28ID:jGY33Ae80430デフォルトの名無しさん (ワッチョイ bfe7-F7Qh)
2017/12/10(日) 12:28:25.79ID:dE7pgqu30 どういう設計にするかって話じゃなくて
設計を決めるのに最初からデータメンバーと下駄雪駄ありきで考えるのをやめろって言ってるんだが
何一つ伝わってないようで残念だ
設計を決めるのに最初からデータメンバーと下駄雪駄ありきで考えるのをやめろって言ってるんだが
何一つ伝わってないようで残念だ
431デフォルトの名無しさん (ワッチョイ 9fbd-aiou)
2017/12/10(日) 12:35:10.91ID:jGY33Ae80432デフォルトの名無しさん (ワッチョイ bfe7-F7Qh)
2017/12/10(日) 13:12:04.65ID:dE7pgqu30 427は例えば前景背景色を変えるインターフェースを作るときに考慮しなきゃならなそうな事のほんの一例を挙げただけで
詳細設計しろなんて誰も言ってないんだが
最初に考慮すべきことはそもそも何を実現するつもりなのか、そのためにどういう操作を受け付けなきゃならないかであって、
privateのデータメンバーにbgColorがあるとかはどうでもいいし、必要ならそんなもの後から変えたっていいんだよ
それをデータメンバーありきで脳死で下駄雪駄付けてたら、そのメンバーの存在が公開外部仕様になって簡単に変えられなくなるんだよ
お前さんの例で言うと、不用意にsetFgColor()とsetBgColor()を公開したら、ずっとその2つを外部から独立に自由に変えられるようにしなきゃならなくなるの
本当にそうするべきなのかは、それこそオブジェクトの本来の目的次第で判断することでしょ?
「とにかくデータメンバーにbgColorとfgColorがあるんだからひつようなんです(^q^)」とか抜かしてたらバカで無能だと思うだろ?
お前さんは今そう見られてるんだよ
詳細設計しろなんて誰も言ってないんだが
最初に考慮すべきことはそもそも何を実現するつもりなのか、そのためにどういう操作を受け付けなきゃならないかであって、
privateのデータメンバーにbgColorがあるとかはどうでもいいし、必要ならそんなもの後から変えたっていいんだよ
それをデータメンバーありきで脳死で下駄雪駄付けてたら、そのメンバーの存在が公開外部仕様になって簡単に変えられなくなるんだよ
お前さんの例で言うと、不用意にsetFgColor()とsetBgColor()を公開したら、ずっとその2つを外部から独立に自由に変えられるようにしなきゃならなくなるの
本当にそうするべきなのかは、それこそオブジェクトの本来の目的次第で判断することでしょ?
「とにかくデータメンバーにbgColorとfgColorがあるんだからひつようなんです(^q^)」とか抜かしてたらバカで無能だと思うだろ?
お前さんは今そう見られてるんだよ
433デフォルトの名無しさん (ワントンキン MM7f-WAMQ)
2017/12/10(日) 14:15:05.98ID:g5uppkbRM buttonならselectedとかdeselectとか、たぶんそんなインターフェース。
color露出とか正気の沙汰ではない。
color露出とか正気の沙汰ではない。
434デフォルトの名無しさん (ブーイモ MMcf-fHNr)
2017/12/10(日) 15:16:20.19ID:F4es0CSwM setColor()なんてグラフィックコンテキストのIFならありがちだけどな。
435デフォルトの名無しさん (ワントンキン MM7f-WAMQ)
2017/12/10(日) 15:18:46.15ID:g5uppkbRM 世の中のたくさんの組織で使われたりするような汎用ライブラリならね
436デフォルトの名無しさん (ドコグロ MMdf-45bT)
2017/12/10(日) 15:25:40.37ID:NqbakoNJM437デフォルトの名無しさん (ワッチョイ 178a-ufcO)
2017/12/10(日) 15:48:26.65ID:wfBy9YeJ0 別にset〜Colorなんて普通にありだろ
変なふうに頭固いやついるね
変なふうに頭固いやついるね
438デフォルトの名無しさん (ワントンキン MM7f-WAMQ)
2017/12/10(日) 16:44:14.11ID:g5uppkbRM 正直GUI系は納期に晒されやすいということもあってコードが汚くなりがちではある
それが劣っているとか優れてるとかではなく気の毒ではある
それが劣っているとか優れてるとかではなく気の毒ではある
439デフォルトの名無しさん (ワッチョイ 9fb3-45bT)
2017/12/10(日) 18:11:24.37ID:o/NiMYKz0440デフォルトの名無しさん (ワッチョイ 9fbd-aiou)
2017/12/10(日) 18:26:16.47ID:jGY33Ae80 >>432
>最初に考慮すべきことはそもそも何を実現するつもりなのか、そのためにどういう操作を受け付けなきゃならないかであって、
いやまさしくおっしゃるとおりで、
グラフィック部品のforeground colorとbackground colorは通常の表示ハードウェアの元では独立に変えられるブツなのだから
ハードウェア寄りなwrapperレベルの実装だとそれぞれ独立に露出するのが正しいという結論に…
(独立に弄っても内部状態の不整合は起きない。これがgetter/setterを公開してもよい基準である
>お前さんの例で言うと、不用意にsetFgColor()とsetBgColor()を公開したら、ずっとその2つを外部から独立に自由に変えられるようにしなきゃならなくなるの
ならない
階層設計の意味がわかっていない?
漏れのやり方で起きることは、Foreground colorとbackground colorの2つを公開したクラスXのインスタンスをいつでも作れるというだけで、
上位水準で要求される操作のみを受け付けるべくXを利用して実現するクラスYではsetFgColor()とsetBgColor()を隠蔽することができる。
(単にYが使うXのインスタンスをprivateにすれば良い
ていうか話を進める前にID:dE7pgqu30には>>426の2行目にお答えいただいてからにしていただきたいですのう…
(>>400の話が途中から変わっていることには目をつぶって差し上げても良いので
>最初に考慮すべきことはそもそも何を実現するつもりなのか、そのためにどういう操作を受け付けなきゃならないかであって、
いやまさしくおっしゃるとおりで、
グラフィック部品のforeground colorとbackground colorは通常の表示ハードウェアの元では独立に変えられるブツなのだから
ハードウェア寄りなwrapperレベルの実装だとそれぞれ独立に露出するのが正しいという結論に…
(独立に弄っても内部状態の不整合は起きない。これがgetter/setterを公開してもよい基準である
>お前さんの例で言うと、不用意にsetFgColor()とsetBgColor()を公開したら、ずっとその2つを外部から独立に自由に変えられるようにしなきゃならなくなるの
ならない
階層設計の意味がわかっていない?
漏れのやり方で起きることは、Foreground colorとbackground colorの2つを公開したクラスXのインスタンスをいつでも作れるというだけで、
上位水準で要求される操作のみを受け付けるべくXを利用して実現するクラスYではsetFgColor()とsetBgColor()を隠蔽することができる。
(単にYが使うXのインスタンスをprivateにすれば良い
ていうか話を進める前にID:dE7pgqu30には>>426の2行目にお答えいただいてからにしていただきたいですのう…
(>>400の話が途中から変わっていることには目をつぶって差し上げても良いので
441デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/10(日) 21:00:01.55ID:dss2es1x0 そもそもセッターゲッター書きまくらなきゃいけなくなるんだけどどうすればいいの?っていう話では
442デフォルトの名無しさん (ワッチョイ 9f34-Xhpf)
2017/12/10(日) 22:12:52.74ID:EDTuXCra0 ゲッターロボ発進!
443320 (ワッチョイ b7e3-qmOZ)
2017/12/10(日) 22:58:45.66ID:PwvSHD+00444デフォルトの名無しさん (ワッチョイ 9fa6-ANK3)
2017/12/11(月) 01:44:26.10ID:NuxLjCLE0 >>443
残念ながら標準C++には無いねー。
俺の周りでも結構欲しがる人多いんだけど、何が良いのかいまいちわからないなー。
使うときに、変数を扱うような記法で、関数コールが出来るってだけだよね…
一文字減るだけで何が嬉しいのか…
残念ながら標準C++には無いねー。
俺の周りでも結構欲しがる人多いんだけど、何が良いのかいまいちわからないなー。
使うときに、変数を扱うような記法で、関数コールが出来るってだけだよね…
一文字減るだけで何が嬉しいのか…
44535歳 (ワッチョイ ffb3-5E0R)
2017/12/11(月) 02:10:24.19ID:OsSLt9Cy0 Bronze取りました
446デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/11(月) 02:22:58.14ID:EZmt4HgD0 自分は邪道なのを承知でマクロ使っちゃってるよ
447デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/11(月) 03:18:45.90ID:hyRKWo4y0 >>444
それについては
to.setBackgroundColor(from.getTextColor());
より、
to.backgroundColor = from.textColor;
の方が読みやすいから俺は否定はしない
それについては
to.setBackgroundColor(from.getTextColor());
より、
to.backgroundColor = from.textColor;
の方が読みやすいから俺は否定はしない
448デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/11(月) 05:56:14.63ID:EZmt4HgD0 >>447
後でカラーが変更されたときに処理を追加したくなったときに面倒
後でカラーが変更されたときに処理を追加したくなったときに面倒
449デフォルトの名無しさん (ワッチョイ ff6e-MWkS)
2017/12/11(月) 06:39:45.71ID:HCkpHsZ20 という、そもそもの話に行き着くだけだな
450デフォルトの名無しさん (ドコグロ MM5b-45bT)
2017/12/11(月) 07:14:44.24ID:WHbaikY8M >>448
話の流れも読めないのかよ...
話の流れも読めないのかよ...
451デフォルトの名無しさん (ワッチョイ ff6e-MWkS)
2017/12/11(月) 09:57:11.02ID:HCkpHsZ20 セッターとゲッターをいちいち作るのかという単純極まる話に流れもへったくれもあるか
452デフォルトの名無しさん (ワッチョイ bfe9-dpgO)
2017/12/11(月) 10:07:16.62ID:hFPLSsub0 だからプロパティが欲しくなるって話なのに……
453デフォルトの名無しさん (ワッチョイ ff6e-MWkS)
2017/12/11(月) 10:33:50.92ID:HCkpHsZ20 欲しけりゃ作れというCいやBから続くハングリー精神を忘れた主張はいくら喚いても無駄だ
454デフォルトの名無しさん (ワッチョイ bfe9-dpgO)
2017/12/11(月) 10:49:40.94ID:hFPLSsub0 話の流れ汲む気ねえな
455デフォルトの名無しさん (ワッチョイ ff6e-MWkS)
2017/12/11(月) 11:08:12.08ID:HCkpHsZ20 そういうおまえさんも、ここ僅か数レスの流れから目を背けているだろうが
456デフォルトの名無しさん (ワッチョイ 9f21-61ea)
2017/12/11(月) 15:05:22.47ID:HQgmyRrm0 不変条件がある→カプセル化(class)
不変条件がない→露出(struct)
では駄目なの?
不変条件がない→露出(struct)
では駄目なの?
457デフォルトの名無しさん (スップ Sd3f-aZj5)
2017/12/11(月) 15:51:19.48ID:iSg/oyC4d ちょっと違う
>>306
try-with-resources/java.lang.AutoCloseable, java.io.Closeable/Java7〜 ですか
try-with-resources/java.lang.AutoCloseable, java.io.Closeable/Java7〜 ですか
459デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 01:07:23.70ID:taGmyuVj0460はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf6f-qmOZ)
2017/12/12(火) 02:35:53.90ID:DNRoqyK/0 そうか。
461デフォルトの名無しさん (ワッチョイ bfe9-dpgO)
2017/12/12(火) 02:55:44.93ID:aBOGkUwZ0 >そういうおまえさんも、ここ僅か数レスの流れから目を背けているだろうが
何回読んでもこのレス最強すぎて草生える
何回読んでもこのレス最強すぎて草生える
462デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/12(火) 05:03:27.37ID:GtRyHF+60 >>459
何に腹立ててるのかまったくわからん
何に腹立ててるのかまったくわからん
463デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 05:49:25.74ID:taGmyuVj0 >>462
いいから読み返してこい。自分がどんなトンチンカンなレス返したのか自覚するまで帰ってくるな。
いいから読み返してこい。自分がどんなトンチンカンなレス返したのか自覚するまで帰ってくるな。
464デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/12(火) 06:04:07.77ID:GtRyHF+60465デフォルトの名無しさん (ドコグロ MMeb-45bT)
2017/12/12(火) 07:20:11.15ID:55mcEBCKM >>464
プロパティっつーのは
> to.backgroundColor = from.textColor;
みたいなコードでも.backgroundColorが変更された時の処理が書ける
って話だから
プロパティっつーのは
> to.backgroundColor = from.textColor;
みたいなコードでも.backgroundColorが変更された時の処理が書ける
って話だから
466デフォルトの名無しさん (スッップ Sdbf-6IXG)
2017/12/12(火) 08:10:48.13ID:R9+tEHmjd プロパティが常に左辺値として扱えるってなら面白いけど、ただのシンタックスシュガーなんでしょ?
467デフォルトの名無しさん (ワッチョイ 9f34-Xhpf)
2017/12/12(火) 08:35:44.42ID:CHSzHMzZ0 getsetなんちゃらより視覚的にわかりやすくて見た目がスッキリして汚物感がない
468デフォルトの名無しさん (ワッチョイ bfe9-dpgO)
2017/12/12(火) 08:37:10.49ID:aBOGkUwZ0 あえて無視してるとかじゃなくてガチでわからんのか……
469デフォルトの名無しさん (ワッチョイ 9f34-Xhpf)
2017/12/12(火) 08:43:59.80ID:CHSzHMzZ0 getsetの()が汚物というかオムツ感
470デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/12(火) 08:47:30.57ID:L7nvt31i0 to.backgroundColor.blue = 100;
みたいに書いても意図通りに動かないからクソ
みたいに書いても意図通りに動かないからクソ
471デフォルトの名無しさん (ワッチョイ bfe7-XaMH)
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ってろ
そこでいちいち教条主義にとらわれて見えない不安と戦うアフォは
物事の分別がわかるようになるまでROMってろ
473デフォルトの名無しさん (ドコグロ MMeb-45bT)
2017/12/12(火) 13:18:37.14ID:55mcEBCKM また流れの読めない奴が来たのかよ...
しかもドヤ顔 w
> 物事の分別がわかるようになるまでROMってろ
お前がな
しかもドヤ顔 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
コンパイルエラーになるなら問題ないやろ
コンパイルエラーになるなら問題ないやろ
476デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/12(火) 16:41:48.86ID:GtRyHF+60477デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 16:52:53.52ID:taGmyuVj0478デフォルトの名無しさん (ドコグロ MM5b-45bT)
2017/12/12(火) 17:02:23.33ID:WkB3oGfAM479デフォルトの名無しさん (ワッチョイ 9f34-Xhpf)
2017/12/12(火) 17:07:23.51ID:CHSzHMzZ0 どうにかする以前に現状の標準規格ではどうにもならない
480デフォルトの名無しさん (ワッチョイ ffe8-G2/9)
2017/12/12(火) 18:02:57.84ID:GtRyHF+60481デフォルトの名無しさん (ガックシ 068f-dpgO)
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 まあ言論の自由なんだけどね
やってて恥ずかしおまへんか?
やってて恥ずかしおまへんか?
484デフォルトの名無しさん (ワッチョイ bfe7-F7Qh)
2017/12/12(火) 18:32:23.92ID:bXatM7Na0 setの方はプロキシオブジェクト噛ませば無理矢理できなくもない(やる価値もない)
getはどうやっても無理
getはどうやっても無理
485デフォルトの名無しさん (ガックシ 068f-dpgO)
2017/12/12(火) 18:33:41.16ID:T04lnVIC6 批判的な意見(噛み合ってはいない)
486デフォルトの名無しさん (ドコグロ MM4b-45bT)
2017/12/12(火) 18:45:22.28ID:v/pth21HM487デフォルトの名無しさん (ワッチョイ 9fb3-Hxc3)
2017/12/12(火) 19:01:09.51ID:0sOBySxq0 プロパティはmsvcだと普通に使えるし、実装できない訳じゃないでしょ
つーかclangもマイクロソフト独自のプロパティに対応してるらしいとの噂
つーかclangもマイクロソフト独自のプロパティに対応してるらしいとの噂
488デフォルトの名無しさん (ワッチョイ 9776-aZj5)
2017/12/12(火) 19:45:15.77ID:3ZbnKJrs0 C++と関係ない話題をふっておいて噛み合ってないとか
489デフォルトの名無しさん (ワッチョイ 9776-aZj5)
2017/12/12(火) 19:46:18.45ID:3ZbnKJrs0 本気で疑問なら調べる手段はいくらでもあるのに
490デフォルトの名無しさん (ワッチョイ 9776-aZj5)
2017/12/12(火) 19:47:35.03ID:3ZbnKJrs0 一応、手間を惜しまなければ代入くらいは出来るけど
491デフォルトの名無しさん (ワッチョイ 9776-aZj5)
2017/12/12(火) 19:48:28.11ID:3ZbnKJrs0 代入とか書くと変な勘違いするヤツがいるか
設定
設定
492デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 19:55:46.38ID:taGmyuVj0 出来るけどテンプレート引数やautoと相性悪いからあまりオススメしない
493デフォルトの名無しさん (ワッチョイ bfe9-dpgO)
2017/12/12(火) 20:05:47.73ID:aBOGkUwZ0 ヤベー奴怒りの4連投
494デフォルトの名無しさん (ワッチョイ 9776-aZj5)
2017/12/12(火) 20:34:17.86ID:3ZbnKJrs0 おすすめしないのは当然
C++なんだから
C++なんだから
495デフォルトの名無しさん (ワッチョイ 778a-ufcO)
2017/12/12(火) 20:43:27.77ID:9uFqgfKJ0 >>478
バカですか?
バカですか?
496デフォルトの名無しさん (ワッチョイ 778a-ufcO)
2017/12/12(火) 20:46:50.47ID:9uFqgfKJ0 C++でC#みたいなプロパティがサポートされる日は永遠に来ないからもう駄々こねるな
497デフォルトの名無しさん (ワッチョイ 57eb-F7Qh)
2017/12/12(火) 20:55:07.83ID:+86TRiAH0 頭いっちゃってる奴らがサイドショーでもやってんのか?
498デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/12(火) 22:04:04.36ID:L7nvt31i0 C#以外のメジャーな言語に採用されたら有用性を認めてやる
499デフォルトの名無しさん (ワッチョイ 579f-F7Qh)
2017/12/12(火) 22:20:18.74ID:4svaTAZj0500デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 22:24:39.30ID:taGmyuVj0 >>498
Python Kotlin Swift
Python Kotlin Swift
501デフォルトの名無しさん (ワンミングク MM7f-WAMQ)
2017/12/12(火) 22:27:11.88ID:jXjdcIPTM502デフォルトの名無しさん (ワッチョイ 9780-yV1O)
2017/12/12(火) 22:30:05.03ID:taGmyuVj0503デフォルトの名無しさん (ワッチョイ 9fb3-45bT)
2017/12/12(火) 22:32:20.45ID:Vo2kP02L0504デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/12(火) 22:32:51.93ID:L7nvt31i0 C#のプロパティはカプセル化の範疇を超えた使い方する奴が出てきてからクソだと思い始めた
505デフォルトの名無しさん (ワッチョイ 579f-F7Qh)
2017/12/12(火) 22:43:30.63ID:4svaTAZj0 >>504
可能であれば例よろしく。URLでいい。
可能であれば例よろしく。URLでいい。
506はちみつ餃子 ◆8X2XSCHEME (ワッチョイ bf6f-qmOZ)
2017/12/12(火) 22:44:50.18ID:DNRoqyK/0 いや、どんな機能もクソな使い方をする奴は少なからずいるよ。
そんなもんだよ。
そんなもんだよ。
507デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/12(火) 22:48:51.09ID:qpuoD4bc0 C言語にバックポートしてほしい機能はテンプレート一択。
何を言っているのかわからないと思うが。。。
何を言っているのかわからないと思うが。。。
508デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/12(火) 23:10:28.93ID:L7nvt31i0 >>505
プロパティ便利すぎとか言ってる同僚が書いた200行を超えるゲッターや初回だけ挙動が違うセッターなど
publicな変数も混ざってる環境なため普通の変数だと思ってあっちこっちで参照していたら気づかないうちに激重になっていた
どこがボトルネックになっているのか探すのに時間がかかった
プロパティ便利すぎとか言ってる同僚が書いた200行を超えるゲッターや初回だけ挙動が違うセッターなど
publicな変数も混ざってる環境なため普通の変数だと思ってあっちこっちで参照していたら気づかないうちに激重になっていた
どこがボトルネックになっているのか探すのに時間がかかった
509デフォルトの名無しさん (スププ Sdbf-dpgO)
2017/12/12(火) 23:13:23.41ID:5Fm7w0SJd 仮にもc++使いならばそんなアホみたいな事例を気にする必要はなかろう
510デフォルトの名無しさん (ワッチョイ 579f-F7Qh)
2017/12/12(火) 23:43:37.47ID:4svaTAZj0 >>508
サンクス。
> どこがボトルネックになっているのか探すのに時間がかかった
多分これがC++がプロパティを入れない理由だと俺は思っているが、
今のC++の勢いならどうせいつか入れるのだろうとも思っている。
> 200行を超えるゲッター
これはあまり行儀はよくないが、
メソッドとフィールドの文法的区別をなくすのがgetterでもあるから、
正しいといえば正しい。
> 初回だけ挙動が違うセッター
これはコンストラクタでやるべきものをセッターに持って来たことが悪い。
つまり、セッターの問題ではない。
セッター文法がこれを誘発するかと言えば、関係ないと思うから、プログラマその人の問題だと思う。
で、C++は一応「プログラマは正しくプログラミングできる」という前提だから、
どうせプロパティもいつか入れるんでしょ、と思っている。
その時には、「getterには重い処理を入れない」等の掟が出来るのだと思う。
サンクス。
> どこがボトルネックになっているのか探すのに時間がかかった
多分これがC++がプロパティを入れない理由だと俺は思っているが、
今のC++の勢いならどうせいつか入れるのだろうとも思っている。
> 200行を超えるゲッター
これはあまり行儀はよくないが、
メソッドとフィールドの文法的区別をなくすのがgetterでもあるから、
正しいといえば正しい。
> 初回だけ挙動が違うセッター
これはコンストラクタでやるべきものをセッターに持って来たことが悪い。
つまり、セッターの問題ではない。
セッター文法がこれを誘発するかと言えば、関係ないと思うから、プログラマその人の問題だと思う。
で、C++は一応「プログラマは正しくプログラミングできる」という前提だから、
どうせプロパティもいつか入れるんでしょ、と思っている。
その時には、「getterには重い処理を入れない」等の掟が出来るのだと思う。
511デフォルトの名無しさん (ワッチョイ 9f12-F7Qh)
2017/12/13(水) 00:53:04.54ID:3t1TagYk0 =での演算子のオーバーロードがsetterに相当する
その辺りを自動でやってほしい
他、+=やらの演算子も余りにも面倒なのでどうにかしてほしい
pythonではそういう軟弱な特殊メソッドがあるが軟弱なのでC++の感触には合わない
さらに困難で不可解な記述方法を編み出すべきだ
その辺りを自動でやってほしい
他、+=やらの演算子も余りにも面倒なのでどうにかしてほしい
pythonではそういう軟弱な特殊メソッドがあるが軟弱なのでC++の感触には合わない
さらに困難で不可解な記述方法を編み出すべきだ
512デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 00:56:28.78ID:SIeP7pZg0 どういうポリシーだよ。
513デフォルトの名無しさん (ワッチョイ 57b3-wlc6)
2017/12/13(水) 01:04:25.30ID:VGyxWnO70 C#についてはサッパリだけど、調べたらかなり便利そうな機能だね、処理を差し挟めるというか?
C++で「stringのように振る舞う値」を作ろうとするとまずその型から定義しなきゃならないし
継承でやっつけることも可能だけど、問題点もある
さらに「intのように振る舞う値」となると継承不可だし、各種演算子をいちいち定義しないといけない
型を定義したいわけじゃなく、ある型のインターフェースを持ちつつアクセス時の処理を入れたいだけ、ってのは
確かにC++にも欲しくなるね
大した例えじゃないと思うけど、いずれ似たようなことが出来るようになったらいいなぁ
C++で「stringのように振る舞う値」を作ろうとするとまずその型から定義しなきゃならないし
継承でやっつけることも可能だけど、問題点もある
さらに「intのように振る舞う値」となると継承不可だし、各種演算子をいちいち定義しないといけない
型を定義したいわけじゃなく、ある型のインターフェースを持ちつつアクセス時の処理を入れたいだけ、ってのは
確かにC++にも欲しくなるね
大した例えじゃないと思うけど、いずれ似たようなことが出来るようになったらいいなぁ
514デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 01:07:04.42ID:SIeP7pZg0 プロパティって要するに、セッターは1引数の関数って場合が多いような。ゲッターは引数無しの関数。
カッコつけないだけで可読性がそこまで上がるもんかと思う。
カッコつけないだけで可読性がそこまで上がるもんかと思う。
515デフォルトの名無しさん (ワッチョイ 77c3-Jck7)
2017/12/13(水) 01:13:16.30ID:YFiH9SDO0 window.SetSize(display.GetSize() * 0.5);
よりは
window.size = display.size * 0.5;
の方が読みやすいとは思う
よりは
window.size = display.size * 0.5;
の方が読みやすいとは思う
516デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 01:21:21.53ID:SIeP7pZg0 んー。まぁそうかも。
517デフォルトの名無しさん (ワッチョイ 1f7e-qmOZ)
2017/12/13(水) 02:17:03.25ID:65/6bu6P0 ゲッターのポインタをどうやって取るつもりだよ
518デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 02:38:27.29ID:SIeP7pZg0 なぜそんな使い方をするのかよくわからん。
参照でパクってくるのはできないの?
参照でパクってくるのはできないの?
519デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 02:39:20.43ID:SIeP7pZg0 あー、あーるばりゅーに&つけるのってダメなんだっけ?
520デフォルトの名無しさん (ワッチョイ 9f34-Xhpf)
2017/12/13(水) 02:47:06.16ID:4G0mfW720 そうそう、汚物感が皆無なのよねえ
521デフォルトの名無しさん (スププ Sdbf-LVSJ)
2017/12/13(水) 04:41:15.27ID:pnzC2QZad522デフォルトの名無しさん (ワッチョイ 9fb3-45bT)
2017/12/13(水) 04:58:13.06ID:0JTwiv230523デフォルトの名無しさん (ワッチョイ ffb4-Nf6k)
2017/12/13(水) 05:38:19.00ID:qfWT6RzB0 ここで議論してる人って、↓の話は当然理解してるんだよね。
http://ufcpp.net/study/miscprog/accessor.html#proxy
http://ufcpp.net/study/miscprog/accessor.html#proxy
524デフォルトの名無しさん (ドコグロ MMdf-45bT)
2017/12/13(水) 06:53:58.70ID:55R6yVv7M525デフォルトの名無しさん (ワッチョイ 5704-IpD3)
2017/12/13(水) 07:47:58.27ID:SIeP7pZg0 https://ideone.com/x4WLWF
これを見てくれ、こいつをどう思う?
大分前にここにも上げたやつ。
こういうこともできなくないけど、標準で持ってほしいのはわからんでもない。
まぁ、カッコ一個減ったくらいでそんなに変わるかどうかはビミョーなところ。
これを見てくれ、こいつをどう思う?
大分前にここにも上げたやつ。
こういうこともできなくないけど、標準で持ってほしいのはわからんでもない。
まぁ、カッコ一個減ったくらいでそんなに変わるかどうかはビミョーなところ。
526デフォルトの名無しさん (ワッチョイ ff81-WAMQ)
2017/12/13(水) 07:51:32.20ID:DfK3Pc7X0 >>502
Storedとも違う
Storedとも違う
527デフォルトの名無しさん (ワッチョイ 57b3-wlc6)
2017/12/13(水) 13:46:22.45ID:VGyxWnO70 >>525
プロパティっぽいことは実現できてると思うんだけど、
いかんせん型が違うから、例えばstringのメンバ関数呼び出しは出来ないし
暗黙のキャストが効かない場面でエラーになるんじゃないかな
やっぱ言語でサポートしてくれないと限度がある
と思ったけどT.P + T.Pとかが通って吹いた
プロパティっぽいことは実現できてると思うんだけど、
いかんせん型が違うから、例えばstringのメンバ関数呼び出しは出来ないし
暗黙のキャストが効かない場面でエラーになるんじゃないかな
やっぱ言語でサポートしてくれないと限度がある
と思ったけどT.P + T.Pとかが通って吹いた
528デフォルトの名無しさん (ワッチョイ 9f6e-MWkS)
2017/12/13(水) 13:59:38.92ID:VOF5ieE50 リファレンサなんか大昔からみんなやってることじゃん
誰かがいみじくも言っていたようにカッコ1つ減らすためだけに
そんな馬鹿げた努力(言語の複雑化も含む)がしたいのか
誰かがいみじくも言っていたようにカッコ1つ減らすためだけに
そんな馬鹿げた努力(言語の複雑化も含む)がしたいのか
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 神田沙也加さん元恋人で元俳優の前山剛久 六本木のメンズラウンジ勤務を報告「真叶(まなと)です。よろしく」 [muffin★]
- 今年の漢字は「熊」に決定! 相次ぐクマ被害 去年は「金」 [冬月記者★]
- ココアさん好き好き大好き
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- なんか最近、立花とかへずまとか河合への風当たり強くないか??
- 「妨」という字が女へんという事実…
- なあ、「石破さんにもう一回やって頂く」って選択肢って…ないか? [976717553]
- 愛国者「釘を使わない日本独自の伝統工法スゴイ!」X民「それ中国起源ですよ」→批判殺到 [834922174]
