X



C++相談室 part131 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 3b96-ov1m)
垢版 |
2017/07/29(土) 11:28:28.97ID:o30VDF4g0
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512

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

前スレ
C++相談室 part130
http://mevius.2ch.net/test/read.cgi/tech/1490917669/

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

■長いソースを貼るときはここへ。■
 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
0204デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/21(月) 08:10:41.60ID:M1FJxIMj0
>>199
だから見解が違っているねと言ったろ
アセンブラは再帰できるのか、できないのかという問いと、
COBOLは再帰できるのか、できないのかという問いに、
同じバックボーンで答えることが俺には出来ないが
おまえさんには出来るということだろ?

>>200
bfdではi370だね
0206デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/21(月) 23:00:08.39ID:M1FJxIMj0
犯人扱いしておいて違ったら知らん顔という制度そのものが間違ってる
捜査協力した人には謝礼だろうが
にせ伝票で架空の謝礼費を着服なんかしてないで
やるべきことをやれっての!
0207デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/21(月) 23:01:02.71ID:M1FJxIMj0
架空の謝礼費を内部告発した仙波さん、えらい扱い受けたよね
0208デフォルトの名無しさん (ワッチョイ b391-MHKs)
垢版 |
2017/08/21(月) 23:09:51.41ID:BkgqT9qm0
C++の最新仕様を追い続けられる人ってのはやっぱどこかちょっと変わり者というか
ふわふわしたものが許せないというか、なんとなく動いてるからいいや的な緩さが
許せないというか、白黒はっきりつけようぜ的な性格なのかな?って思ったw
0209デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/21(月) 23:12:01.91ID:M1FJxIMj0
たったの千円でも知らん顔とは次元が違う
謝礼の対象でないという取り決めがあるばかりに
警察官の横柄な態度を誘発しているんだよ
0210デフォルトの名無しさん (ワッチョイ 99e4-njFf)
垢版 |
2017/08/21(月) 23:56:14.20ID:pHph3yYu0
>>208
たかだか3年に1度の更新がそんなにしんどいのかよ
追い続けるもクソもねえ
重箱の隅をつついても1冊程度にまとめられる量しかないのに
0214デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 01:03:51.34ID:NIldwpVs0
>>208
ほとんどが待ってた機能だぜ?
言語仕様だけでなくライブラリまで
おまえろくすっぽC++使ってねえだろ
0215デフォルトの名無しさん (ササクッテロラ Sp4d-d1ZX)
垢版 |
2017/08/22(火) 02:32:46.66ID:Z58zmq8rp
全くわからない
雰囲気でc++を使っている
0218デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 12:26:19.96ID:NIldwpVs0
そういうおまえはあるのか?
0220デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 12:42:39.12ID:NIldwpVs0
それが本当なら恥ずかしい見積もりミスしてんぜおまえさん
0222デフォルトの名無しさん (ワッチョイ 616f-faiX)
垢版 |
2017/08/22(火) 15:03:21.13ID:d7ebk59r0
うん。するどい。
0223デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 15:14:35.21ID:NIldwpVs0
雑誌ってエロ本か何かだろどーせ
技術系の雑誌やっててあーゆーバカ言っちゃ自殺もんの恥だぜ
0226デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 17:20:14.07ID:NIldwpVs0
あいたた、本にまとめることも、実装とテストも、
とにかく量的な感覚がどこにもないのか
0227デフォルトの名無しさん (ワッチョイ 0b32-xhIi)
垢版 |
2017/08/22(火) 20:47:37.89ID:0/CmF7JC0
>>213
なら、publicにしちゃえばいいじゃんといってみる。

関数は振る舞いを書くべきだと思うし、変数の代わりに使うものじゃないと思うんだ。

あと、オブジェクト指向的にクラス変数は基本悪である、ということも考えるべきではないだろうか。
0238デフォルトの名無しさん (ワッチョイ 8123-jLVh)
垢版 |
2017/08/22(火) 22:58:36.57ID:D8nSL4rC0
>>233
逆にそれが入らない原因なのでは?
軽い処理(public変数)なのか重いかもしれない処理(関数呼び出し)なのか、
見た目分かるようにしろってのがC++の流儀なんだろ。

俺はあった方がいいと思うけどね。
速度チューニングでこの手のマイクロマネージメントは全く意味がないから。
0242デフォルトの名無しさん (ワッチョイ 817f-jLVh)
垢版 |
2017/08/22(火) 23:13:00.45ID:zLx3ukqP0
>軽い処理(public変数)なのか重いかもしれない処理(関数呼び出し)なのか、
>見た目分かるようにしろってのがC++の流儀なんだろ。

C++って、それを判断するのが最も困難な部類の言語だと思うが。
0243デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/22(火) 23:20:46.21ID:NIldwpVs0
set/get用のデータメンバをちまちま用意するという
狭い考えに限定してきやがる思考妨害アイテムは無用
0250デフォルトの名無しさん (ワッチョイ 8123-jLVh)
垢版 |
2017/08/23(水) 00:09:19.34ID:CuDbJhab0
つかお前ら他言語使ってないだろ。
逆に言えばC++はその程度の精度での見積もりが出来る、ということなんだよ。

GC言語なんてGCがどこで走るか予測不能だから、実行時間の保証なんて全く出来ないし、
JIT言語はJIT側にその最適化が入っているかどうかで全く速度が変わってしまう。
つまりJava/C#/JavaScript等はその精度での見積もりはそもそも不可能なんだよ。

それとは別に、C++はその辺の仕組みがかなり複雑になっているのは認めるが、
それでも他言語と比べたら精度高く見積もれる方だよ。

getterを使った場合の問題は、それが見積もりにくくなることと、
あまりに多用するとどこで処理しているのか分かりにくくなる点だが、
まあ、適切に使っている限りはかなり使える機能だから、有った方が便利なんだけどね。
だから普通に考えれば「貪欲」なら当然入れるべきだし、
むしろラムダより先に入れるべきだが、入れないんだから何か引っかかってんでしょ多分。
0253デフォルトの名無しさん (ワッチョイ 817f-jLVh)
垢版 |
2017/08/23(水) 07:57:53.52ID:KTb6BBkr0
a = 1;

こんなコード片で、aの型がプリミティブ型かconstr(int)/operator=(int)を持つクラスなのかによって
実際に実行される処理内容が違う時点で

>軽い処理(public変数)なのか重いかもしれない処理(関数呼び出し)なのか、
>見た目分かるようにしろってのがC++の流儀なんだろ。

そんなものないとわかるだろう。
それににしても、そこからGCのオーバーヘッドに話が飛ぶのはさすがにアクロバティックすぎるw
実実行時間の話なら、マルチスレッドの非リアルタイムOS上のプログラムはどれも正確な見積もりなどできん。
0254デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/23(水) 08:29:43.04ID:kvkWqUxa0
プリミティブ型? ああJava訛りね、C++用語はISO/IEC14882:2011 3.9.1に規定あるから

a = 1; がビルトインの代入か、トリビアルのoperator=か、
ユーザー定義のoperator=か、コンストラクタを呼び出すか、
コピーかムーブか、読めない人はC++には向いてないので無理しなくていいよ
要するにアセンブラ苦手なんだろ

マルチスレッドでもタイムクリティカルとか割り込みマスクとかあるしね
別にRTOSに限ったことじゃなく
0256デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/23(水) 12:25:37.91ID:kvkWqUxa0
C++を批判するには
おまえ足んねーものが
多すぎつってんだよ
0257デフォルトの名無しさん (ワッチョイ 2baa-PF2c)
垢版 |
2017/08/23(水) 18:58:23.34ID:HlA0mWJs0
C++ 標準委員会のドワンゴ江添は、職務質問の手荷物検査を拒否したら、
警官10人に、現場で1時間半以上、拘束されたらしい

捜査でもない、任意の行政処分なのにw

それで東京都を訴えた
0258デフォルトの名無しさん (ドコグロ MMb3-x4Vn)
垢版 |
2017/08/23(水) 19:16:52.69ID:Rd2CDMDCM
>>254
> a = 1; がビルトインの代入か、トリビアルのoperator=か、
> ユーザー定義のoperator=か、コンストラクタを呼び出すか、
> コピーかムーブか、読めない人
それがわかったからと言ってなんになるんだ?
定義が常に読めるとは限らんだろ

> 要するにアセンブラ苦手なんだろ
逆アセしてでも読めとか言ってるなら単なる老害のアホ
0259デフォルトの名無しさん (ワッチョイ ab1c-Pf/K)
垢版 |
2017/08/23(水) 22:25:37.71ID:kvkWqUxa0
>>258
ほーお、おまえさんは定義が読めないと判断できないのか
普通の人は宣言まで読めれば判断できるんだがw

逆汗読まないほうがバカガキ
バカガキからみて普通の人は老害というだけ
0263デフォルトの名無しさん (ワッチョイ c61c-9BKz)
垢版 |
2017/08/24(木) 10:04:23.28ID:VdsYrxcW0
いらね
0264デフォルトの名無しさん (ワッチョイ ca32-2x4P)
垢版 |
2017/08/24(木) 11:04:12.57ID:h3Bt5TkH0
プロパティじゃないと出来ないことってなになの
0266デフォルトの名無しさん (ワッチョイ c61c-9BKz)
垢版 |
2017/08/24(木) 11:45:56.43ID:VdsYrxcW0
IDEがやれば済むこと
わざわざ言語に入れる必要なし!
0268デフォルトの名無しさん (ワッチョイ 8642-mY/i)
垢版 |
2017/08/24(木) 14:05:25.76ID:5zDLSTW70
オブジェクトの状態と操作の区別
関数でも代用できてしまうけど、変数のように扱えるってのが大きい
変数のような使い方で処理を挟める、これはPublicなメンバ変数では出来ない
0269デフォルトの名無しさん (ワッチョイ c61c-9BKz)
垢版 |
2017/08/24(木) 14:20:51.13ID:VdsYrxcW0
できるよバーカ
C++98より前、ARM C++の時代から
0273デフォルトの名無しさん (ワッチョイ cac5-5mwo)
垢版 |
2017/08/24(木) 18:52:57.63ID:4nWMkj3x0
質問ですが
std::string str("abcdefghi"); // (*1)
str.resize(8); // (*2)
size_t len = strlen(str.c_str()); // <-- "abcdefgh\0"の長さが返る (*3)
となるのですが、(*3)の時点でできる終端NUL文字"\0"って、
いつのタイミングでどこの領域に確保されるのですか、
0276デフォルトの名無しさん (ワッチョイ ca9f-tmrH)
垢版 |
2017/08/24(木) 20:00:39.22ID:kJk0ElnZ0
>>270
そのスマートオブジェクトをメンバ変数にした場合、一々親へのポインタをそのスマートオブジェクトに記憶してやらんといけないからすごく面倒なのだよ
プロパティはその点何の束縛もないから良いのだ
0277デフォルトの名無しさん (ワッチョイ c61c-9BKz)
垢版 |
2017/08/24(木) 20:11:18.34ID:VdsYrxcW0
>>272
アフォwww
template と try catch それと typeid はARMで新設されたんだよ
おまえ多重継承だけだと思ってんだろ
0280デフォルトの名無しさん
垢版 |
2017/08/24(木) 20:39:47.98ID:oFKMCsHnd
🐒
0287デフォルトの名無しさん (ワッチョイ cac5-5mwo)
垢版 |
2017/08/24(木) 22:12:47.64ID:4nWMkj3x0
Windows Phoneの開発で使うC++/CXにはpropertyが構文でサポートされているで
ていうかpropertyがあることが存在意義な感じ?(ネイティブなC++は別にあってそれはそれで利用可能
0292デフォルトの名無しさん (ワッチョイ ad23-vgeI)
垢版 |
2017/08/25(金) 00:06:28.73ID:w8QRZZ7K0
>>287
それ以前のVC++/CLIからサポートされてる。

>>286
駄目。
propertyは新規機能ではなく、見た目だけの問題だから、
逆に言えば、見た目がpropertyで書いた時より分かりにくいようなら駄目なんだ。
ほぼ同じ事はラムダとファンクタでもそうだけど。
0293デフォルトの名無しさん (ワッチョイ b632-+Jgu)
垢版 |
2017/08/25(金) 00:10:22.03ID:hVYhQQjP0
>>268
オペレーターのオーバーライドとにたような感じになると思うけど、その挟み込む処理の重さが隠蔽されてしまうという問題があって、一般には、非推奨だとおもうのだけど今はかわってきてるのかね?

たとえば、代入しているだけだとおもったら、実はファイルアクセスまでしてたとかかな。
0294デフォルトの名無しさん (ワッチョイ cac5-5mwo)
垢版 |
2017/08/25(金) 00:19:32.01ID:4dE2HuPo0
>>293
>258理論によれば、老害じゃなければ一目で処理の重さがわかるんじゃね
もっとも処理の重さに関するC++の不透明さに警戒を抱くことを老害とするならば、
カーニハンやリッチーも老害にカテゴライズされてしまうが
0295デフォルトの名無しさん (ワッチョイ ad23-vgeI)
垢版 |
2017/08/25(金) 00:49:30.90ID:w8QRZZ7K0
>>294
K&Rというか生Cが嫌っている理由は「余計なことをするな」だ。
適切に使っている限りC++は不透明ではない。それでも彼等は嫌うだろ。

>>293
横だが結局は使い方次第だよ。C++はいくらでも読みにくいコードを書けるから。
ただ、きちんと使えば有用な機能だよ。
演算子オーバーロードについてはgoogleは「慎重にやれ」だね。
https://ttsuki.github.io/styleguide/cppguide.ja.html#Operator_Overloading

どうでもいいが、何故演算子は「オーバーロード」なんだ?
言われてみれば「オーバーライド」の方が適切な気がする。
0296デフォルトの名無しさん (ワッチョイ 8642-mY/i)
垢版 |
2017/08/25(金) 02:45:57.11ID:g+9HiqWa0
>>293
それは言語機能の問題じゃなく実装の問題じゃない?

propertyってメンバ変数がどうなっているかに関わらずオブジェクトの状態を表すもの
言語機能の話をしているのであって
既存の機能をやりくりして似たことは出来るって言われてもって感じ
0298デフォルトの名無しさん (ワッチョイ c61c-9BKz)
垢版 |
2017/08/25(金) 05:23:39.04ID:RGmsOxnq0
>>295
オーバーロードは新設で、たいていのoperatorがこっち
オーバーライドは変更で、代入やnewが本当はこっち
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況