- 1 名前:デフォルトの名無しさん mailto:sage [2013/10/28(月) 01:00:22.34 ]
- The C++ Standards Committee
www.open-std.org/JTC1/SC22/WG21/ Wikipedia https://en.wikipedia.org/wiki/C%2B%2B14 C++11/C++1y 18 toro.2ch.net/test/read.cgi/tech/1365073520/
- 486 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 18:38:40.24 ]
- >>484
何がしたいのかよくわからないよ。 デフォルト引数がしたいのか、可変長引数がしたいのか、何?
- 487 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 20:32:46.40 ]
- >>486
>>471にある通り ファンクタ fn に対して [fn](auto x, auto y = 8) { return fn(1, x, y); }; //yにデフォルト値あり ということがしたい。 自作のbindモドキをラムダにリプレースできないか検討中。 bind(fn, 1, _1, _2 = 8); ということをやっているので、ラムダ引数でのautoの使用とデフォルト値が必要になる。 なければ他の手段でできないか、ということです。
- 488 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 20:43:32.48 ]
- C++14なら完全対応してるclangがあるんだからそれ使えばいいやん
- 489 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 22:22:11.62 ]
- いままでのあらすじ
ジェネリックΛ期待。デフォルト引数もok? ↓ それはダメ ↓ 他の手段で無い? ↓ C++14ならclang使えば? ←話が理解できないバカ
- 490 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 22:39:48.62 ]
- ラムダ式って言語レベルの話じゃん?
それをライブラリで何とかしようとするのがおかしい boostになければ諦めろって
- 491 名前:デフォルトの名無しさん mailto:sage [2014/01/13(月) 23:19:26.86 ]
- >>490
まあそうなんですけどね。 今使ってるライブラリのデフォルト引数機能が便利なので、 ラムダで同じことができるようになるならリプレース そうじゃないなら継続利用(レベルアップ含む) のどっちに行くべきか見きわめたくなって。 できないっぽいので後者で行くことになるかな。
- 492 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 00:41:24.49 ]
- >>491
んーと、今現在 bind(fn, 1, _1, _2 = 8); というのを実現してるってこと?
- 493 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 07:01:52.07 ]
- >>492
そうですよ。 関数名とプレースホルダはちょっと変えてるけど。
- 494 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 12:46:18.88 ]
- 関数ポインタとかラムダにオーバーロードがあればいいのに
- 495 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 12:53:56.29 ]
- 一体何をオーバーロードする気だ
- 496 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 14:19:40.75 ]
- まああれだ、C++14でラムダ式にジェネリックが入るというのは必要だからだろう
多分もっとSTLが最適化出来る
- 497 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 14:27:51.74 ]
- とりあえずboostのoverloaded_functionつかっとけい
- 498 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 17:28:49.81 ]
- STL?
15年ぐらい前にそんなのあったな まだ使ってるなんて化石も甚だしい
- 499 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 17:30:57.86 ]
- 使える化石だからな
- 500 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 20:11:25.90 ]
- C#に超便利なLINQがあるだろうが
C++11ももっとSTLとかラムダ式を柔軟にしないと性能はともかくユーザー層で負ける
- 501 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 21:14:35.66 ]
- いいからお前は黙ってC#使ってろよ
>ユーザー層で負ける アイドルの人気投票じゃないんだからw
- 502 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 21:19:48.95 ]
- STL?
15年ぐらい前にそんなのあったな そんなメンテもされていない化石をまだ使ってるなんて
- 503 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 21:39:02.69 ]
- ふーん
algorithm系って何にリプレースすればいいの?
- 504 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 22:14:00.90 ]
- >>497
感動した! 実装は簡単ぽいな。
- 505 名前:デフォルトの名無しさん mailto:sage [2014/01/14(火) 22:56:59.82 ]
- >>497
ちょっと苛めてみた boost::overloaded_function<int(int), int(int*), int(int**), int(int***), int(int****), int(int*****), int(int******), int(int*******), int(int********), int(int*********), int(int**********), nt(int***********), int(int************), int(int*************), int(int**************) >mem(int a) const; error 'boost::overloaded_function' : テンプレート 引数の数が多すぎます
- 506 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:33:00.31 ]
- >>502
おいalgorithm系は何にリプレースすればいいんだよ?
- 507 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:47:39.55 ]
- STLじゃなくてC++標準ライブラリを使えってことだろ。
何を言っているんだオマエは。
- 508 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:52:16.47 ]
- <algorithm>はSLTだろうが。
何を言ってるんだオマエは。 それともコンテナとイテレータだけだとでも言うつもりか?
- 509 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:53:28.46 ]
- ×SLT
○STL
- 510 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:54:28.36 ]
- 定義を明確にせず否定も肯定もできないと思います。
- 511 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 23:56:39.10 ]
- >>508
STL? そんなものがISO/IEC 14882:2011のどこに書いてあるのですか? SGIかステパンと勘違いしてるのでは?
- 512 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:01:37.78 ]
- ・STLは標準化前の遺物派
・コンテナ、イテレーター、アルゴ、ファンクタのみSTL派(string含まず) ・stringもSTL派(iostream含まず) ・テンプレートは全てSTL派 ・C++の標準ライブラリは全てSTL派 ・なんとなくライブラリは全てSTL派 厳密に正しいのは最初で他は誤り
- 513 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:02:19.36 ]
- >>511
だったら「STLなどというものは初めからありません」と言わなきゃつじつまが合わんだろ。 STLという言葉を使った以上、その定義や守備範囲を自分の中に持っているはずだ。 「15年くらい前にあったな」というからには、その当時は存在していたわけだ。 <algorithm>がSTLでなくC++標準ライブラリだというなら、どこかの時点で定義なり認識が変わったわけだろ。 その根拠を出せ。
- 514 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:11:43.65 ]
- 根拠なんてあるわけないだろ。
差別化のネタにしたいだけなんだから。
- 515 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:12:06.32 ]
- >>513
>「15年くらい前にあったな」というからには、その当時は存在していたわけだ。 それがSGIとかステパノフなんだろ。
- 516 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:15:38.61 ]
- >>515
>>498,502
- 517 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:22:36.04 ]
- >>512のコピペとか見ろよ
・STLは標準化前の遺物派 が正しいとしても、そのSTLの範囲がなんだったかについては何も語ってないだろ。 だから2番目以降の選択肢の正誤なんてわかりっこない。 どうでもいい争いなんだからヤメトケ。
- 518 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:29:19.04 ]
- >STLは標準化前の遺物派
このコピペは修正が必要だな。 「STLは標準化前の遺物派(ステパノフのアレ、もしくはSGIのアレ)」
- 519 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:42:35.61 ]
- ・STLは標準化前の遺物派
(ステパノフのアレ、もしくはSGIのアレ) ・コンテナ、イテレーター、アルゴ、ファンクタ のみSTL派(string含まず) ・stringもSTL派(iostream含まず) ・テンプレートは全てSTL派 ・C++の標準ライブラリは全てSTL派 ・なんとなくライブラリは全てSTL派 STLという用語の根拠があるのは最初のみで 他はコンセンサスの得られない脳内定義
- 520 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:46:05.60 ]
- まーた始まった
- 521 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:48:39.38 ]
- >>519
なるほど用語に根拠があるのですね。 で、その内容が「STLは標準化前の遺物派」ということだと。
- 522 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 00:58:28.03 ]
- STLが髪の伸びたOTLに見えてなりません
- 523 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 01:40:28.01 ]
- 502「(標準化される前の)STLなんて化石をまだ使ってるなんて」
503,506「(俗称としての)STLを置換するライブラリってなんだよ」 507「(標準化される前の)STLじゃなくて(標準化された)C++標準ライブラリを使えってことだろ」 508「(俗称としての)(コンテナ以外も含む)STLは現役のライブラリだろ」 おまえらわざとやってるだろ。
- 524 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 01:43:23.08 ]
- なんか「プログラミング言語C」または「C」は名称として正しいが
「C言語」は只の俗称・通称の類に過ぎないってネタとそっくりだ
- 525 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 01:48:12.39 ]
- それを言うなら
「OSって何ですか?IBMが何故関係?」 昔STLは確かに存在したのだから
- 526 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 01:51:37.22 ]
- voidみたいな芸風はやめろよ。
- 527 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 02:21:52.84 ]
- A:写メ送って!
B:今時写メとは化石ですか? A:じゃあ写メに変わる物は? B:普通にスマホで写真撮って送れ B:写メは2001年にJフォンが〜 A:だったら写メなどというものはありませんと言え 当時は存在していたわけだ B:だからそれがJフォンの
- 528 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 03:13:33.92 ]
- > 昔STLは確かに存在したのだから
> 当時は存在していたわけだ 化石って認めてる発言だよねコレ。
- 529 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 03:17:55.19 ]
- 化石いうても標準コンテナの基本的な部分だよな
- 530 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 07:56:19.19 ]
- 話が理解できていない>>529が哀れ
「化石のSTLは標準ライブラリのコンテナの基礎となった」 が正しい。 標準ライブラリには「ここはSTL」という説明はなく また化石STLと標準ライブラリの類似部分とは完全に一致でもない
- 531 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 08:06:53.37 ]
- 3文字の略称をつけないコミッティーの責任
それが名付けられるまでSTLを使って構わない
- 532 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 11:32:52.17 ]
- >>530
横からサンクス、やっと話題を理解できた
- 533 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 12:17:18.60 ]
- Cのcnd_timedwaitにPOSIXの略称を付けないのは委員会の責任
名付けられるまでは<pthread.h>のcond_timedwaitも <thread.h>のcnd_timedwaitのどちらも POSIXと呼んで構わない キチガイの発想ではこうなるんだろうな
- 534 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 12:29:03.79 ]
- そんなに標準ライブラリのなかのやつをSTLとは呼ばないって主張が重要ならこんな所で吠えてないでWikipediaの記事修正してきたら?
言語数多いけど頑張ってね。
- 535 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 12:33:23.00 ]
- 予想される展開1
「標準ライブラリーにはSTLという言葉がない」 「じゃあWikipedia直せよ」 「オマエが直せ」 予想される展開2 「標準ライブラリーにはSTLという言葉がない」 「じゃあWikipedia直せよ」 「オマエが規格を直すのが筋」
- 536 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 12:41:35.63 ]
- すでにあった展開
「標準ライブラリーにはSTLという言葉がない」 「(531)なので規格のもSTL」←??
- 537 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 19:46:11.59 ]
- 今は、テンプレートを使って作られた標準ライブラリー、でSLTになっているから注意な
- 538 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 20:20:44.66 ]
- はいはい、中国人の真似した糞レスはいらない
- 539 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 20:22:52.48 ]
- ああん、お前、どこ中の張魯よ?!
- 540 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 20:25:41.20 ]
- ワタシ、離珠と申します
- 541 名前:デフォルトの名無しさん mailto:sage [2014/01/21(火) 10:26:14.02 ]
- 14っていつ出るの?
委員会ドラフトが出てから久しいのだけれど
- 542 名前:デフォルトの名無しさん mailto:sage [2014/01/22(水) 20:37:10.34 ]
- WG21は無能なので あと5年は出ません
- 543 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 06:36:28.84 ]
- 一番待たれてる機能ってなに?ジェネリックラムダ?
- 544 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 07:11:36.74 ]
- 戻り値の型推論が無いとλが使いにくい
- 545 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 07:46:34.11 ]
- コンセプト
- 546 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 10:54:47.70 ]
- Concept連日鬼のように議論されてるけどなかなか仕様が固まらないな
ジェネリックラムダは簡単に入りそうだけど というかClangでは使える
- 547 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 11:53:08.19 ]
- コンセプトは要らないな。
メンバー関数ごとに要件が違うんだから メンバー関数内にstatic_assert(is_xxw::value) をたくさん書いてくれりゃいいわ。
- 548 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 14:48:34.09 ]
- テンプレートの話じゃないのか
- 549 名前:デフォルトの名無しさん mailto:sage [2014/01/28(火) 20:36:23.16 ]
- テンプレートのインタフェースみたなものという理解でいいのかな
- 550 名前:デフォルトの名無しさん [2014/01/29(水) 00:01:14.41 ]
- C++でプロパティを実現するココロミ
codezine.jp/article/detail/7571?p=3
- 551 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:09:09.69 ]
- ジェネリックラムダと、constexprの制約緩和でいいよもう
- 552 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:11:25.64 ]
- 来る将来、片っ端からconstexprを付けることに
- 553 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:19:27.99 ]
- コンパイル時レイトレーシングができるんだ。
出荷時に処理が終わっている製品とか、夢が広がリングww
- 554 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:35:24.21 ]
- それよくわかってない門外漢の質問で済みませんが、単にコンパイル時にレイトレ計算完了してるって理解でいいの?
コンパイル後にシーンやモデルの入力替えることが出来ないのであれば、プロダクトとしての価値がよくわかりません 解像度上げたら十分時間かかってるようだし
- 555 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:45:19.98 ]
- >>554
さすがにレイトレ完了までやってしまうのはネタだけど、 部分的にでも出来れば全体として高速化が出来る部分が増えるってことだ。
- 556 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:49:50.51 ]
- わかりやすいのは、sqrtやsin/cosなどの演算目的の関数だろうか
あるいは、ビットマスクのようなものとか
- 557 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 00:58:42.44 ]
- >>554
その理解でいい 特に価値は無い PostScriptでレイトレと似たようなもんだな 「プリンタがレイトレしてやがるwwwおせぇwww」 「コンパイラがレイトレしてやがるwwwwおせぇwww」 「Webブラウザが仮想PCホストしてやがるwwwwおせぇwww」 あるいはメガデモ的な面白さ
- 558 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 03:05:47.24 ]
- mailing来てるのに全く話題に出てないのな
やっぱりswap演算子はボツか
- 559 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 06:24:26.17 ]
- 本はよ
- 560 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 21:51:33.29 ]
- 本は要らんから isoははよ規格出せ
- 561 名前:デフォルトの名無しさん mailto:sage [2014/01/29(水) 23:22:02.65 ]
- >>557
本はよ
- 562 名前:デフォルトの名無しさん mailto:sage [2014/01/30(木) 00:58:06.43 ]
- >>555-557
解説どもです、スッキリしました 変態的で興味が募ったのでちょいぐぐって情報の海に溺れてきます
- 563 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 05:45:58.14 ]
- 簡単なhackで引数に明示的な型しかとらない指定ってできませんかね?
int a[1]; func( bool ); func( a ); // たまに起こるミス、型チェックを通ってしまう たとえば func( explicit bool ); ←こんなキーワード func( true / false / bool(a) ); // OK func( a ); // 暗黙の変換はエラー
- 564 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 06:27:40.45 ]
- >>563
こういうのはtemplateが役に立つ ideone.com/eFtKnq
- 565 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 06:34:30.65 ]
- あとはbool引数を取るexplicitコンストラクタを持つクラスをつくって
それをfuncの引数にすると二重の暗黙変換はできないからfunc(explicit_bool_type);に直接intを渡せなくなる。
- 566 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 06:36:30.97 ]
- ideone.com/PqUkNh
- 567 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 06:41:43.77 ]
- >>565は間違いだった。すまん。
- 568 名前:563 mailto:sage [2014/02/14(金) 08:31:22.51 ]
- >>564-567
ありがとうございます 暗黙の変換が行われる前にテンプレート関数で引き受けて=delete宣言するのですね 目から鱗が落ちました
- 569 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 08:39:30.06 ]
- >>563
T で受け取って戻り値 std::enable_if<std ::is_same<T,bool>::value>::type SFINAE サイコー
- 570 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 13:52:59.31 ]
- static_assert(std::is_same<T,bool>::value, "申し訳ないがbool以外はNG");
- 571 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 14:11:25.48 ]
- 本当に成金企業がやって吹いたw
とりあえずおめ。
- 572 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 21:15:51.96 ]
- >>569
Tで受け取って、なら大丈夫だけど一般にはT&&とすることも多いから is_same は要注意だよな。
- 573 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 21:33:33.45 ]
- >>572
そそ なんかうまく呼ばれねーとなって remove_cv とかゴテゴテと追加
- 574 名前:デフォルトの名無しさん mailto:sage [2014/02/14(金) 21:38:06.90 ]
- オレはこうしてるw
template<typename T> struct remove_ref_cv { typedef typename std::remove_reference<typename std::remove_cv<T>::type>::type type; };
- 575 名前:393 mailto:sage [2014/02/15(土) 04:06:39.49 ]
- 俺の予想が当たった!
- 576 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 05:06:04.15 ]
- なんか言語機能が弱すぎて書き方が多様化するperlっぽくなってるな
オナニー化はダメな流れだわ
- 577 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 07:14:28.55 ]
- C/C++より強力と言える言語はアセンブラしかないが
- 578 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 13:07:36.64 ]
- >>577
言語「機能」っていってるじゃん
- 579 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 13:40:57.63 ]
- オブジェクト指向アセンブラマダー?
- 580 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 16:56:16.42 ]
- むかしむかし、SAPPというアセンブラが川に洗濯に行って流されてしもうた
- 581 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 18:42:32.62 ]
- なんで、アセンブラと同程度の実行速度を保ちつつモダンな書き方のできる言語が登場しないのかね?
- 582 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 19:40:01.06 ]
- Dじゃダメなの
- 583 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 19:43:32.33 ]
- Dはどうも万年ベータ版な印象
- 584 名前:デフォルトの名無しさん [2014/02/16(日) 20:36:52.85 ]
- >>581
童貞度というか HDL はry
- 585 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 21:09:46.62 ]
- C/C++が一番それっぽいといえばそれっぽいが、そもそもモダンな書き方ってなによ。
- 586 名前:デフォルトの名無しさん mailto:sage [2014/02/16(日) 21:13:25.43 ]
- C#みたいなやつ
プロパティとかテンプレートとか
|

|