[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 03/10 14:55 / Filesize : 275 KB / Number-of Response : 1033
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C++相談室 part124



1 名前:デフォルトの名無しさん(ワッチョイ 7fc9-G+K4) mailto:sage [2016/04/03(日) 00:22:24.07 ID:ZT/2NYWz0.net]
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。

前スレ
C++相談室 part123
echo.2ch.net/test/read.cgi/tech/1456040187/

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

■長いソースを貼るときはここへ。■
 codepad.org/
 ideone.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

641 名前:デフォルトの名無しさん (ササクッテロ Spa9-10y/) mailto:sage [2016/05/10(火) 21:54:48.65 ID:dn5a8gBPp.net]
>>622
while(1)
{
...
int c = waitKey(1);
if(c == 'q') break;


642 名前:デフォルトの名無しさん (ワッチョイ 7c7b-m/h6) mailto:sage [2016/05/10(火) 22:12:32.27 ID:3v8mTcBj0.net]
>>626
答えは>>620
時間待ちさえ明らかにバグっててちゃんと待ててない
他の人も言ってるけどコードを晒せば?

643 名前:デフォルトの名無しさん (ワッチョイ 9c9d-APoh) mailto:sage [2016/05/10(火) 22:17:19.25 ID:VjIbGp3Q0.net]
>>627
waitKeyってOpenCVの関数なのか。なら、スレあるのかは知らないがOpenCVスレで聞くのがいいだろ
俺、OpenCVは使ったことはないが、
opencv.jp/opencv-2svn/cpp/user_interface.html#cv-waitkey
の注意 2にある動作条件
>HighGUI ウィンドウが少なくとも1つ存在し,それがアクティブな場合にのみ動作
これが守られてなんじゃないのか?

644 名前:デフォルトの名無しさん (ワッチョイ bd7b-YzxY) [2016/05/10(火) 22:23:32.56 ID:A1YVuqbS0.net]
>>626
nanosleep使ってもある程度大きな値まではビジーループだぞ
OSはそんなに小さなタイミングで割り込みなんて出来ないから

645 名前:デフォルトの名無しさん (ワッチョイ 3ff8-H0Kj) mailto:sage [2016/05/10(火) 22:34:59.20 ID:zxnDb8j/0.net]
>>630
超どうでも良いけど、可能か不可能かで言ったら
約0.84マイクロ秒置き(1193182 Hz)の割り込みが来るように出来るようにハードウェアは組まれてるです。

646 名前:デフォルトの名無しさん (ワッチョイ 56c0-T8u2) mailto:sage [2016/05/10(火) 23:00:23.29 ID:yaG18+U20.net]
スレッドの切り替えチャンスは与えたけど誰もいないので俺スレ頑張っちゃうよ

647 名前:デフォルトの名無しさん (ワッチョイ be9f-fbpY) mailto:sage [2016/05/10(火) 23:06:07.16 ID:HVyJ1rA+0.net]
>>631
ハードウェアもOSも限定せずにそんな保証できるわけないだろ

648 名前:デフォルトの名無しさん (オッペケ Sra9-wv7z) mailto:sage [2016/05/10(火) 23:18:12.87 ID:T8dqPhAzr.net]
>>621
いきなりイミフなコードを貼り付けてどうした?
何か話さなきゃお前はただのアスペだぞ

649 名前:デフォルトの名無しさん (ワッチョイ 3ff8-H0Kj) mailto:sage [2016/05/10(火) 23:19:38.14 ID:zxnDb8j/0.net]
>>633
ごめんよ。
でも8259互換チップが入ってないPC/AT互換マシンなんて今時あるのかい?



650 名前:デフォルトの名無しさん (ワッチョイ be9f-HMKq) mailto:sage [2016/05/10(火) 23:33:33.53 ID:7q8s7zNm0.net]
唐突にPC/AT互換マシン

651 名前:デフォルトの名無しさん (ワッチョイ 9c41-lMTc) mailto:sage [2016/05/10(火) 23:51:40.34 ID:5J1aLd4L0.net]
PC/AT互換マシンって言いたいだけの奴いるよなwww

652 名前:デフォルトの名無しさん (ワッチョイ 3f42-7Olf) mailto:sage [2016/05/10(火) 23:54:10.15 ID:GH5TUzj80.net]
入力があるまでHALTする方法はないのか?

653 名前:デフォルトの名無しさん (ワッチョイ 9c42-wv7z) mailto:sage [2016/05/10(火) 23:54:27.58 ID:5EInyMQF0.net]
>>634
値渡しじゃなくて参照渡しだってコードだろ
要するに>>612は間違い

654 名前:デフォルトの名無しさん (ササクッテロ Spa9-10y/) mailto:sage [2016/05/10(火) 23:56:27.95 ID:y6IvleFLp.net]
>>628
コードは>>627です

>>629
ウインドウはちゃんとループ外で定義してありますし使い方は合ってるはずです

>>630
ある程度はどれくらいですか?
100ms待たせたらCPU80%くらいまで減りましたが…

655 名前:デフォルトの名無しさん (オッペケ Sra9-wv7z) mailto:sage [2016/05/10(火) 23:59:19.74 ID:T8dqPhAzr.net]
>>639
低能のお前にヒントをやろう
参照型と参照渡しを混同してはいけない
そしてC#言語仕様5版 7.5.1 Argument lists を読んでこい


656 名前:Java言語仕様8版でもいいぞ []
[ここ壊れてます]

657 名前:デフォルトの名無しさん (ワッチョイ 9c42-wv7z) mailto:sage [2016/05/11(水) 00:00:38.44 ID:AJNn1ICv0.net]
あ、そう…

658 名前:デフォルトの名無しさん (ワッチョイ 9c41-lMTc) mailto:sage [2016/05/11(水) 01:10:14.65 ID:GzlL/1jH0.net]
言語仕様がどうとか言う奴ってえてして仕事できないよなw
内の会社にもやたら、言語に関しては詳しいけど実際のコーディング、デバッグなんかは
やたら遅い奴いるわw

たぶん小さなサンプルプログラムばっかりしか書いたこと無いんだろうな

659 名前:デフォルトの名無しさん (ワッチョイ 3f42-7Olf) mailto:sage [2016/05/11(水) 01:21:35.07 ID:ubToLDC+0.net]
>>640
多分CPUは、この無限ループを全力で実行しているんだと思うよ

>通常のイベント処理ではこの関数を周期的に呼び出す必要があります.

ってあるから、通常は時々呼び出しなさいということでしょ。



660 名前:デフォルトの名無しさん (ササクッテロ Spa9-10y/) mailto:sage [2016/05/11(水) 01:27:59.88 ID:0F7keYqip.net]
>>644
ありがとうございます。
そこで、CPUにこの無限ループを全力で実行させないようにする方法はないですかね?

661 名前:デフォルトの名無しさん (ワッチョイ 3f42-7Olf) mailto:sage [2016/05/11(水) 01:48:35.76 ID:ubToLDC+0.net]
OSが何かにも寄るんでしょうkが、
Windows環境ならSleep()と言うのがあります。
Unix環境ならusleep()関数を使ってみては?

waitKey()の説明を読む限り、この関数内でのタイムアウト時間指定ですよね。
ループ全体の中でwaitKey()が専有する時間が1msって事で、
ループのそれ以外の部分では、何の処理も行わず、再びwaitKey()に戻っているんでしょう。
おそらくSleep、usleep関数に渡す引数の値だけCPU占有率が減ると思います。
これは泥縄的な方法ですけどね。
できるなら、「イベント発生通知をOSから受け取る。それまではお休みする」が良いと思います。

662 名前:デフォルトの名無しさん (ワッチョイ 3fe7-lMTc) mailto:sage [2016/05/11(水) 02:04:52.39 ID:TxG4e4qF0.net]
C++11からchronoとthis_threadを使ったスリープが汎用的にアルヨ。
osまたぎたいならこれも視野に。
まぁ問題はそこじゃなさそうだけど。

663 名前:デフォルトの名無しさん (ワッチョイ c13c-APoh) [2016/05/11(水) 04:12:57.00 ID:AYk4CdLN0.net]
MATAGI vs KIKORI。

664 名前:デフォルトの名無しさん (ワッチョイ 9c7b-SnbV) mailto:sage [2016/05/11(水) 07:33:54.29 ID:E3fj3Ww+0.net]
ビジーループ(ポーリング)と、イベント(call back)では、イベントを使うべき

ビジーループでは、CPUが占有されてしまう。
一方イベントでは、CPUを使わない

665 名前:デフォルトの名無しさん (ワッチョイ c13c-APoh) [2016/05/11(水) 14:29:08.71 ID:Hst0/UDE0.net]
賢いドライバーならカーブでは速度を落とすものです。
ところで、ポーリングで速度を落とす賢いプログラマはいないモノでしょうか。

666 名前:デフォルトの名無しさん (ワッチョイ f910-F7+X) mailto:sage [2016/05/11(水) 15:24:54.40 ID:GeTKo9910.net]
>>645
そもそも「...」の部分の処理が重いんじゃないの?
処理一切無しでwaitKeyだけでも重いの?

667 名前:デフォルトの名無しさん (JP 0H0d-aZyM) mailto:sage [2016/05/11(水) 15:31:43.86 ID:l/Aku55rH.net]
ゲーム系のフレームワークでありがちな
ウエイト無しクソサンプルを真似たんじゃろ
まともなものならドキュメントなりチュートリアルなりで説明があるはず

コールバック型のイベント処理だって探せば出てくるんじゃないの

668 名前:デフォルトの名無しさん (ワッチョイ bd7b-YzxY) [2016/05/11(水) 16:24:44.34 ID:to/KEVVR0.net]
クソサンプルてゲームならそれでええやろ

669 名前:デフォルトの名無しさん (JP 0H0d-aZyM) mailto:sage [2016/05/11(水) 16:35:01.05 ID:l/Aku55rH.net]
駄目だ駄目だ駄目だ



670 名前:デフォルトの名無しさん (ワッチョイ bd7b-YzxY) [2016/05/11(水) 16:50:01.24 ID:to/KEVVR0.net]
>>654
一応聞いてやるけど何が?

671 名前:デフォルトの名無しさん (ワッチョイ c13c-APoh) [2016/05/11(水) 17:04:09.30 ID:Hst0/UDE0.net]
>>655
ノートが熱くなって燃えてしまいました。
謝罪と賠償を要求します。

672 名前:デフォルトの名無しさん (ワッチョイ 9c41-lMTc) mailto:sage [2016/05/11(水) 18:03:39.93 ID:GzlL/1jH0.net]
C++を開発するってどういうこと?
Bjarne Stroustruはなにをしたの?

MSやintel

673 名前:なんかにコンパイラを作って提供したって事なの? []
[ここ壊れてます]

674 名前:デフォルトの名無しさん (JP 0H0d-aZyM) mailto:sage [2016/05/11(水) 18:39:38.91 ID:l/Aku55rH.net]
C++を発明した

675 名前:デフォルトの名無しさん (ワッチョイ 8063-wv7z) mailto:sage [2016/05/11(水) 19:05:28.34 ID:5a6iax+r0.net]
糖質がまた幻覚を見たようだな
今日はまた一段とぶっ飛んでいる

676 名前:デフォルトの名無しさん (ワッチョイ bd02-7Olf) mailto:sage [2016/05/11(水) 20:32:01.30 ID:FbDxsPeF0.net]
>>657
最初にC++というものを考えた

677 名前:デフォルトの名無しさん (ワッチョイ 56c0-T8u2) mailto:sage [2016/05/11(水) 21:38:44.46 ID:Hbfyg6Vu0.net]
int C=0;
C++;

678 名前:デフォルトの名無しさん (アウアウ Sa41-Zs2w) mailto:sage [2016/05/11(水) 21:55:30.78 ID:mridOWona.net]
C with classes

679 名前:デフォルトの名無しさん (ワッチョイ 7d7b-7M79) mailto:sage [2016/05/11(水) 23:05:50.38 ID:rzhdH4Ry0.net]
なぜ ++c でなくて c++ なのか。
それは c の間にやっておきたかった事があるから。



680 名前:デフォルトの名無しさん (ワッチョイ 9fa6-Wsqh) mailto:sage [2016/05/12(木) 00:49:34.70 ID:skSN1OPx0.net]
++cよりc++の方が速いかもしれないから

681 名前:デフォルトの名無しさん (ワッチョイ 6fcc-/3cR) mailto:sage [2016/05/12(木) 01:54:44.22 ID:V7G0arWW0.net]
後置はイテレータだと副作用が出るけどな

682 名前:デフォルトの名無しさん (ドコグロ MMef-/3cR) mailto:sage [2016/05/12(木) 07:19:43.34 ID:H+I8h1G8M.net]
>>664
そんなケースあったっけ?

683 名前:デフォルトの名無しさん (ワッチョイ 37bf-/3cR) mailto:sage [2016/05/12(木) 08:51:12.00 ID:N3lYKGUd0.net]
>>664
勘違いしちゃったのかなー?

684 名前:デフォルトの名無しさん (ブーイモ MM1f-/3cR) mailto:sage [2016/05/12(木) 08:53:10.66 ID:4BYM8qUWM.net]
c++プログラマなら使えるところは常に前置だろjk

685 名前:デフォルトの名無しさん (ワッチョイ 4b7b-XzP0) mailto:sage [2016/05/12(木) 08:59:45.88 ID:rpWGZ4yl0.net]
>>666-667
後置はアウトオブオーダー実行が上手く働く可能性が高い

686 名前:デフォルトの名無しさん (ワントンキン MM9f-/3cR) mailto:sage [2016/05/12(木) 09:05:01.86 ID:c1sDAwi0M.net]
いやいや…

687 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 09:18:46.59 ID:BxH3pzV60.net]
ttp://cpp.aquariuscode.com/preincriment-vs-postincriment
この件かな

688 名前:デフォルトの名無しさん (ワッチョイ 4b7b-XzP0) mailto:sage [2016/05/12(木) 09:33:56.48 ID:rpWGZ4yl0.net]
>>671
本来は後置++の方が等速あるいは速い、但しstd::iteratorに限っては前置++の方が速い

そのページはstd::iteratorでも前置++が速いと言う主張だろ

689 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 09:48:47.40 ID:BxH3pzV60.net]
>>672
数行のまとめすら読めないのか



690 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 09:51:14.28 ID:BxH3pzV60.net]
>>672
と、思ったらそれ以上のバカだったのかな?
いいから後置の方が早い理由を示せよ

691 名前:デフォルトの名無しさん (ワッチョイ 4b7b-XzP0) mailto:sage [2016/05/12(木) 09:58:38.72 ID:rpWGZ4yl0.net]
>>673
誤字を鬼の首取ったように突っ込むな

誤 そのページはstd::iteratorでも前置++が速いと言う主張だろ
正 そのページはstd::iteratorでも後置++が速いと言う主張だろ

692 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 10:02:26.01 ID:BxH3pzV60.net]
>>675
読んだらそんな結論にならないと思うんだけど

693 名前:デフォルトの名無しさん (ワッチョイ 4b7b-XzP0) mailto:sage [2016/05/12(木) 10:03:07.66 ID:rpWGZ4yl0.net]
>>674
取り敢えずキミは、pentium以降のCPUの高速化技術を検索して、理解してから出直しなさい。

694 名前:デフォルトの名無しさん (ワッチョイ 4b42-Wsqh) mailto:sage [2016/05/12(木) 10:10:22.66 ID:3WPpAXGg0.net]
特定のCPUを持ち出す必要があるんですか?

695 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 10:11:24.20 ID:BxH3pzV60.net]
>>677
取り敢えずキミは、提示された資料を読めるようになってから出直しなさい。もう手遅れかもしれんけど。

696 名前:デフォルトの名無しさん (ワッチョイ 4b7b-XzP0) mailto:sage [2016/05/12(木) 10:12:01.44 ID:rpWGZ4yl0.net]
>>676
そのページが参照してる
> インクリメントの前後置速度比較
のソース読んでから出直す事だ

> ゲームエンジンアーキテクチャ第二版 プレインクリメント vs ポストインクリメント
の主張を全然反映してないベンチマーク引用してるから、理解力が不足してると迷宮に囚われる

697 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/12(木) 10:13:08.97 ID:DRM/51U40.net]
なるほどなー。
ldしてincしてstoreしてからじゃないと++fooの結果は使えないけど
foo++ならldするだけで使えるって事か。
確かに

698 名前:、主作用の方の値を使いたいなら後置の方が実行速度が高くなりうるな。

ちょっと試してみた
バージョンはgccが4.8.4、clangが3.7.0、環境はXubuntu on VMWare on Win7 on i7-5820k 3.3GHz
https://gist.github.com/pixie-grasper/d71c6e8ef13992c426559256e520beca
まとめると、clang/gccで-O0/-O3について比較したら
gcc -O0については前置より後置の方が3%くらい速くなったけど
他では後置より前置の方が速くなった。

結論:前置より後置の方が速くなる事はある。
[]
[ここ壊れてます]

699 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 10:17:36.81 ID:BxH3pzV60.net]
>>681
それ同じ処理じゃねえから、ベンチマークとして不適切



700 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/12(木) 10:21:09.51 ID:DRM/51U40.net]
>>682
うん、確かに10億分の1だけ前置のほうが早く終わる処理になってるけど
それでも後置のほうが3%くらい速くなるケースが実際にあった。
10億分の1と3%の比較は出来る?

701 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/12(木) 11:04:31.19 ID:BxH3pzV60.net]
>>683
いや、俺が悪かった。
後値を前値に単純に置き換えられるような処理で後値の方が早くなるケースなんてほぼないもんな。

702 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/12(木) 11:28:30.44 ID:DRM/51U40.net]
>>684
そうなー。
後置を前置で単純に置き換えれるって事は副作用しか使ってないわけで
副作用しか要求しておらず、コンパイラが最適化をサボる場合には、
余計なインスタンスの生成が走りうる後置よりin-placeな前置の方が速い。

但し、intなんかのbuilt-inな型はコンパイラが最適化してくれる
&そうでない型も処理が見えてればコンパイラが頑張って最適化してくれるので
副作用しか使わなければどっちでも同じ機械語列になるって事は書いてあるね。

でも>>671の先から引用を引用すると

「しかし、値が使われる場合、CPUのパイプラインでストールを生じさせないので、
ポストインクリメントの方が優秀である。
したがって、プレインクリメントの動作が絶対に必要である場合を除いて、
必ずポストインクリメントを使う習慣を身につけたほうがよい。」

とあって、パイプラインストールが起こりうるなら後置のほうが良い事もあるってのが元々の論旨だから
もっと露骨にパイプラインストールが起こるようにコンパイラの最適化を邪魔したら
-O3しても後置のほうが速くなったわ
https://gist.github.com/pixie-grasper/6d9c560601f191df0dd205911866cc1e

703 名前:デフォルトの名無しさん (ミカカウィ FF6f-Wsqh) mailto:sage [2016/05/12(木) 14:57:11.64 ID:oq6xjtF8F.net]
質問です。

class data{
public:
int score;
};
class test{
public:
std::vector<data> *v;
};

void main(){
test abc;
test *d = &abc;
(*(d->v))[1].score = 1;//
}

(*(d->v))[1].score;の他に書き方無いでしょうか?
アロー演算子を2重に使うとかやってみましたができませんでした。
配列を使う方法と、[1]をポインタ演算にして書く方法があれば両方教えてほしいです。

704 名前:デフォルトの名無しさん (ワッチョイ cb3c-EA1W) mailto:sage [2016/05/12(木) 15:55:07.83 ID:MyP06V7u0.net]
d->v->data()[1].score = 1;
d->v->at(1).score =1; // ただし境界チェックが入る
(d->v->begin() + 1)->score = 1;

705 名前:デフォルトの名無しさん (ワッチョイ ef9f-Wsqh) mailto:sage [2016/05/12(木) 16:02:27.95 ID:LsrVgu920.net]
>>687
ありがとうございました。そういうやり方があったんですね。

706 名前:デフォルトの名無しさん (ワッチョイ 377b-nbuf) mailto:sage [2016/05/12(木) 16:02:54.52 ID:e6oRkxgP0.net]
そんなことよりなんでtest::vがポインターなんだよ
newしてないし、[1]にはアクセスできないし、それ動かないよ
いずれにせよ初心者歓迎スレ案件だな

707 名前:デフォルトの名無しさん (ワッチョイ ef9f-Wsqh) mailto:sage [2016/05/12(木) 16:15:54.25 ID:LsrVgu920.net]
あ、質問スレ他にあったんだ。ここだと思った。

708 名前:デフォルトの名無しさん (ワッチョイ 237b-/3cR) mailto:sage [2016/05/12(木) 17:49:55.66 ID:e7uDPICZ0.net]
これってよく言われる前置か後置かの問題じゃないでしょ。

変数更新タイミングを使用直前にするか更新可能な一番早いタイミングで行いかの違いで、アルゴリズムの変更を伴う可能性が高い。
その場合後者の方がいいが、コピーして前置でも結果は同じ。

前置か後置かで前置がいいと言われているのは、あくまで単に+1したいってとき。所謂forの3つめ

709 名前:デフォルトの名無しさん (ワッチョイ 6fcc-/3cR) mailto:sage [2016/05/12(木) 18:41:37.34 ID:V7G0arWW0.net]
>>686
いちいちポインタに直すメリットは?



710 名前:デフォルトの名無しさん (スプー Sd1f-/3cR) [2016/05/12(木) 19:09:46.88 ID:V8j8LQpxd.net]
メリットデメリットなんて問題にしてないから

711 名前:デフォルトの名無しさん (ワッチョイ 033c-hNIp) [2016/05/12(木) 19:23:08.71 ID:wtk4J6jy0.net]
ポインタの方がカッコイイじゃないですか。
頭良さそうで。

712 名前:デフォルトの名無しさん (ワッチョイ dbb1-yliF) [2016/05/12(木) 20:19:14.11 ID:u4rYymiL0.net]
(d->v)とか最高に頭悪そうだな
流れは違うが前置と後置がわかってない、以前に憶える気がない

713 名前:684 (ワッチョイ cbcf-Wsqh) mailto:sage [2016/05/12(木) 20:25:17.26 ID:6ncal6FL0.net]
>>689
>そんなことよりなんでtest::vがポインターなんだよ
要素数100万くらいのvectorが10個くらいあって、
必要なvectorにいちいちポインタを書き換えてる、じゃダメ?
入門書以外で他人のコード読むことないからぐちゃぐちゃやってる。

714 名前:デフォルトの名無しさん (ワッチョイ 377b-nbuf) mailto:sage [2016/05/12(木) 20:36:16.87 ID:e6oRkxgP0.net]
>>696
ごめん。何言いたいのか分からない
1M要素くらいの配列が10個くらいあるからってなんだって言うんだろう?

715 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/12(木) 21:04:50.54 ID:DRM/51U40.net]
>>696
生のポインタなんて使わずにstd::shared_ptrを使え。

class test{
public:
std::shared_ptr<std::vector<data>> v;
};

d->v = std::make_shared<std::vector<data>>(1000000);

716 名前:デフォルトの名無しさん (ワッチョイ b79d-hNIp) mailto:sage [2016/05/12(木) 21:12:08.75 ID:k4tl7img0.net]
>>697
俺も>>696が何言いたいのかわからんが、
>>686の質問からして初心者だろうから、あんまり突ついてもって思う。
少しレベル上がると、今のコード見て恥ずかしい・頭悪いやり方してたんだ
って思うんじゃないか。

717 名前:デフォルトの名無しさん (ワッチョイ 7f13-Q4kq) mailto:sage [2016/05/12(木) 21:15:46.74 ID:R6+MliT10.net]
>>663
後置インクリメント,前置デクリメントは68系の慣習

718 名前:デフォルトの名無しさん (ワッチョイ 9f8b-EA1W) mailto:sage [2016/05/12(木) 21:35:16.27 ID:xhYAhim/0.net]
Z-80のpopとpushもそう

719 名前:デフォルトの名無しさん (ワッチョイ 9f8b-EA1W) mailto:sage [2016/05/12(木) 21:36:56.40 ID:xhYAhim/0.net]
ていうか今日日のコンパイラが
インクリメント前のcの値を使わないケースでも
c++を++cと違うコードに落とすとはにわかには信じ難い
この世には知らないほうが幸せなことがあるのかもしれない…



720 名前:デフォルトの名無しさん (ワッチョイ 2310-0YMq) mailto:sage [2016/05/12(木) 22:01:48.84 ID:2OPIh6as0.net]
>>686
d->v->operator[](1).score = 1;

721 名前:デフォルトの名無しさん (ワッチョイ 937b-qps8) mailto:sage [2016/05/13(金) 08:07:22.18 ID:ApLv0E8+0.net]
return c++;
とかで外で値を受け取らないケースで最適化が上手く動くもしくは動かないケースとかなら
あるかもとは思うけど、そんなどうでもいいケース考えてどうすんの?って話ではある。

722 名前:デフォルトの名無しさん (ワッチョイ 37bf-/3cR) mailto:sage [2016/05/13(金) 08:44:07.94 ID:Ja7udZmR0.net]
・クラス化されたiteratorを使う時には、言語レベルでの手順差が明らかにあるから、とりあえず全て前置使っとけば問題ないでしょ
ていう方法論の話と、
・整数プリミティブ型の場合は後置の方が速い事がある
って言う実測論に近い話をごっちゃにしてはいけないと思うの。

723 名前:デフォルトの名無しさん (スプー Sd1f-/3cR) mailto:sage [2016/05/13(金) 11:31:14.81 ID:G/A+aqfad.net]
「言語レベル」の手順差?

724 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/13(金) 13:01:39.98 ID:ZUyuraMo0.net]
>>702
人間としては同じ意味のコードでも、言語の意味論上は別な意味として解釈しなければならないのだから
最適化前のコードは異なって当然。
んでもって、違うコードを初期地点として独立に最適化を掛ける訳だから
最適化後のコードは異なる可能性がある(偶然一致する可能性もある)。
そういうお話

725 名前:デフォルトの名無しさん (ワッチョイ a763-/3cR) mailto:sage [2016/05/13(金) 20:48:02.35 ID:EayoOtAj0.net]
>そういうお話
という幻覚を見てしまったようです。
統合失調症ID:rpWGZ4yl0、ID:DRM/51U40と
その他の健常者との噛み合わない会話

726 名前:662 (ワッチョイ 9fa6-Wsqh) mailto:sage [2016/05/13(金) 20:56:04.60 ID:y6JoVpFh0.net]
鼻ほじりながら書いたら>>666-668あたりで予想通りのレスが返ってきて、それで終わるのかと思いきや
意外と後を引いててワロタw

727 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/13(金) 21:28:43.56 ID:ZUyuraMo0.net]
>>708
残念、糖質じゃなくてアスペでした

728 名前:デフォルトの名無しさん (ワッチョイ 2730-o0Hb) mailto:sage [2016/05/13(金) 21:41:15.90 ID:na9JUjrP0.net]
キチガイの一言で解決しろや

729 名前:デフォルトの名無しさん (ワッチョイ 9302-Wsqh) mailto:sage [2016/05/13(金) 23:27:56.30 ID:akm6bXau0.net]
いいからアセンブラのコード見ろよ



730 名前:デフォルトの名無しさん (ワッチョイ 937b-UkU1) [2016/05/14(土) 01:22:12.62 ID:guvuQQ9l0.net]
前値を後値に変更して効率的になる場所なんて限られてるからどうしてもその場所のパフォーマンスを上げたいって時の知識として知っててもいいかなぐらいの事だよ
常に後値で書かれたらデメリットが大きすぎる

731 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) [2016/05/14(土) 08:57:39.96 ID:BsF9lC3v0.net]
アセンブリも読めないc++erなんて滅びればいい

732 名前:デフォルトの名無しさん (ワッチョイ a763-/3cR) mailto:sage [2016/05/14(土) 09:11:42.00 ID:EHXndh+50.net]
アセンブリが読めてもパイプラインの正しい知識の無い人に言われても…

733 名前:デフォルトの名無しさん (ワッチョイ 9302-Wsqh) mailto:sage [2016/05/14(土) 10:34:04.60 ID:5qwu2L7o0.net]
デジタル回路の正しい知識も必要

734 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/14(土) 10:37:31.14 ID:BsF9lC3v0.net]
そうだね。
1段NOTゲートと3段NOTゲートの違いくらい説明できなきゃね。

735 名前:デフォルトの名無しさん (ワッチョイ 9302-Wsqh) mailto:sage [2016/05/14(土) 11:45:07.22 ID:50Ljn6jM0.net]
半導体の物性を理解していない人にC++を使って欲しくない

736 名前:デフォルトの名無しさん (ワッチョイ a763-/3cR) mailto:sage [2016/05/14(土) 11:53:10.78 ID:EHXndh+50.net]
むしろC++を語るのに半導体物性とかアセンブリ言語とかどうでもいい

737 名前:デフォルトの名無しさん (ワッチョイ 4bf8-Z3GX) mailto:sage [2016/05/14(土) 12:13:40.02 ID:BsF9lC3v0.net]
基礎は大事だろ。

何処まで掘り下げるかって問題はあるけど

738 名前:デフォルトの名無しさん (ワッチョイ 233c-/3cR) mailto:sage [2016/05/14(土) 12:43:01.47 ID:eiJc4QAX0.net]
なにが悲しくてアセンブリを理解しなきゃならんのだ。
そんなのは言語開発者とコンパイラの仕事だ。

739 名前:デフォルトの名無しさん (ワッチョイ 4b42-Wsqh) mailto:sage [2016/05/14(土) 12:53:34.15 ID:jHuAeQfl0.net]
ビジネスアプリケーション専門の人ならそうかもしれないが
ハードウェア資源を有効利用しようとした途端アセンブラレベルの知識は必要になるだろ

理解する必要はないが、理解している奴の仕事を代わって引き受けられないな



740 名前:デフォルトの名無しさん (ワッチョイ 3775-yliF) [2016/05/14(土) 12:56:54.42 ID:4NwAroGq0.net]
なぜか事務処理系の案件もやったことがあるが
ちょっとしたバカの壁を透過するのにアセンブラ使ったぞ

741 名前:デフォルトの名無しさん (JP 0H6f-mfIb) mailto:sage [2016/05/14(土) 13:35:56.95 ID:fLeelvLJH.net]
なにが悲しくてC++を理解しなきゃならんのだ。
そんなのは組込み・基盤システム開発者の仕事だ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<275KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef