C++14/C++1y
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2013/10/28(月) 01:00:22.34http://www.open-std.org/JTC1/SC22/WG21/
Wikipedia
https://en.wikipedia.org/wiki/C%2B%2B14
C++11/C++1y 18
http://toro.2ch.net/test/read.cgi/tech/1365073520/
0002デフォルトの名無しさん
2013/10/28(月) 08:53:28.040003デフォルトの名無しさん
2013/10/28(月) 11:29:11.92残念だ、その未来に君はもういないんだよ...
0004デフォルトの名無しさん
2013/10/28(月) 19:27:47.380005デフォルトの名無しさん
2013/10/28(月) 19:40:29.790006デフォルトの名無しさん
2013/10/28(月) 19:40:53.140007デフォルトの名無しさん
2013/10/28(月) 20:04:57.00○軽量コンセプトさん
あのコンセプトさんが生まれ変わって帰ってきた!
しかしかつてのコンセプトさんに比べると大幅に能力が下がっており、
一部ではstatic_assertさんの変装ではないかと噂されている。入学はもう少し先になる予定。
○attributeさん
久々に任せられたのは「でぷりけーてど」なる呪詛とともにD組送りにする能力。
今日も死んだ魚のような目を輝かせながら生徒達を地獄へ送る。
○constexprさん
いきなり「勝手に『てーすーしき』を名乗るのは許さないからね!」とライブラリ科に向かって言い放ち
学科の多くの生徒達とファンの土器屋を困惑させた。
あと「りかーしぶ」はやっぱりめんどくさいので普通の女の子に戻るらしい。
○ラムダさん
もはや当たり前に受け入れられて引っ張りだこの人気者。かつて服で騒がれてたのは何だったのか。
少し几帳面すぎて融通が利かないのが不評だったので、autoさんに空気の読み方を教えてもらった。
○関数さん
靴のサイズを気にしなくていいラムダさんが羨ましくなったので、autoさんにサイズの決め方を教えてもらった。
せっかくだからラムダさんと同じ服を着たいと言っているのだが、「君はベテランなんだから我慢しなさい」と
周りの大人が許してくれないようだ。
○decltypeさん
新たに姉のautoさんとの合体技も覚えて本人はノリノリだが…
服の違いで性格が変わる悪癖も直っておらず、合体技もやや前衛的で、なんだか最近黒いオーラが見えると噂されている。
○autoさん
型なんかもう全部autoでいいんじゃねえかなと思わせるような八面六臂の大活躍。
不動の学園アイドルの座を射止めた彼女をD組から睨み続けるregisterさんとは目を合わせてはいけない。
0008デフォルトの名無しさん
2013/10/28(月) 20:05:29.04一部の教師のゴリ押しで、ケタクギリなるおかしなアクセサリーを付けさせられることになった。
汚い見た目は主にユーザー定義リテラルさんのせいらしく、恨み節が止まらない。
○二進リテラルさん
数値リテラル姉妹の四女。前の入試では「君は別にいらないから」と入学拒否されたものの
じゃあユーザー定義リテラルさんに代わりやってもらおうかとなったとたんに
急遽入学が決まった。本人は困惑している。なおケタクギリは彼女も付けさせられる予定。
○ユーザー定義リテラルさん
入学してしまったものは仕方ないので、ライブラリ科は受け入れ準備を渋々始めている。
数値リテラル姉妹とのトラブルで陰口を叩かれたり、complexさんのお手伝いのときに
if姐さんを危うく怒らせそうになったりしながらもたくましく生き延びているようだ。がんばって!
○文字列リテラルさん
ついこの間「ゆーてぃーえふ」を操る髪飾りを手に入れた。髪飾りなしでも使えるのだが、そしたら
英語の先生が急にブチ切れたのでビックリして泣き出してしまった。
○拡張for文さん
汚い制服を引きずりながら「Rangeちゃん…Rangeちゃんさえ来てくれれば…」とうわごとを繰り返す毎日。
早く彼女を助けてあげて下さい。
○Traversalさん
元Rangeさん。「お前わかりにくいから」と改名させられ、大変わかりにくくなった。
拡張for文さんが精神を病んでいく様を辛そうに眺めている。
0009デフォルトの名無しさん
2013/10/28(月) 20:07:00.27入学早々D組行きを宣告された悲劇の子。
ときどき当てても反応しないと、ある先生が職員会議でもらしたばっかりに大問題になり
とても通学できない重病だと判断されたらしい。かわいそうに。
○動的配列さん
入学が延期された。C99クラスにはとっくに通ってるんだから早くしろと怒っているらしい。
双子の妹のdynarrayさんも入学延期中。
○optionalさん
入学が延期された。「どうせ私はoptionalだしー」と本人はあっけらかんとしている。
○exempt_ptrさん
shared_ptrさん達の引き立て役として呼ばれた末妹。アホの子。,
「sharedおねーちゃんはさんしょうカウンターですごいんだぞー」と自慢しているが
もちろん本人は何もわかっていない。入学はもう少し先になりそう。
○禿
校長先生。動的配列さんを自分好みに魔改造すべく企んでいるという噂。
0010デフォルトの名無しさん
2013/10/28(月) 20:54:50.410011デフォルトの名無しさん
2013/10/28(月) 20:59:46.670012デフォルトの名無しさん
2013/10/28(月) 21:08:09.180013デフォルトの名無しさん
2013/10/28(月) 21:18:30.110014デフォルトの名無しさん
2013/10/28(月) 21:44:22.38今では、いない子扱いされてる
0015デフォルトの名無しさん
2013/10/28(月) 22:06:46.90待て、そのfriendは危険すぎる!
0016デフォルトの名無しさん
2013/10/28(月) 22:10:47.270017デフォルトの名無しさん
2013/10/28(月) 22:11:38.770018デフォルトの名無しさん
2013/10/28(月) 22:20:04.270019デフォルトの名無しさん
2013/10/28(月) 22:23:47.670020デフォルトの名無しさん
2013/10/28(月) 22:25:27.000021デフォルトの名無しさん
2013/10/28(月) 22:32:24.16俺がアスペになっていました
0022デフォルトの名無しさん
2013/10/28(月) 22:51:47.32それな。
0023デフォルトの名無しさん
2013/10/28(月) 22:58:44.740024デフォルトの名無しさん
2013/10/28(月) 23:31:49.720025デフォルトの名無しさん
2013/10/29(火) 01:49:56.280026デフォルトの名無しさん
2013/10/29(火) 02:07:44.150027デフォルトの名無しさん
2013/10/29(火) 02:27:33.39なるほどなるほど要するに
auto exp = [](){ /* 適当 */ };
auto eq = [](){ /* 適当 */ };
auto ne = [](){ /* 適当 */ };
auto r = exp ? eq : ne;
auto p = find_if(range, r);
みたいに、if文は三項演算子とラムダ式に、ループ文はアルゴリズム関数とラムダ式にして
書けばいいんだろ?1行で書くのが偉いんだよな?身の回りで最近見掛けるわ。
死ねばいいのに
0028デフォルトの名無しさん
2013/10/29(火) 02:44:41.640029デフォルトの名無しさん
2013/10/29(火) 02:46:32.240030デフォルトの名無しさん
2013/10/29(火) 15:34:51.26const 付けない奴は死ねばいいのに
0031デフォルトの名無しさん
2013/10/29(火) 15:55:45.92って書き方は、その関数の生成が実行時になる現在だと悪い冗談だけど、constexprが一般化して
コンパイル時に回るようになったら、思いの他流行りそうな気がしてる。
近い将来、関数言語かぶれ死ね!黙れロートル!というやり取りがされるのかな?とw
0032デフォルトの名無しさん
2013/10/29(火) 21:40:46.16今でも実行時じゃ無いだろ
0033デフォルトの名無しさん
2013/10/30(水) 17:29:16.930034デフォルトの名無しさん
2013/10/31(木) 07:24:44.05A = true;
A = 1;
A = 2.0;
if( A )
return true;
if( A == 1 )
return true;
if(A == 1.0)
return false;
if(A==2.0)
return true;
0035デフォルトの名無しさん
2013/11/03(日) 20:36:07.95Range-based forを使おうとするとconstがなんたらかんたらでエラーが出るし、
無理に代入しようとするとmoveが起きて、元のスマポの中身が空っぽになる
イテレータでunique_ptrのポインタでも何でもいいからうまく回す方法ないですか?
0036デフォルトの名無しさん
2013/11/03(日) 20:47:46.810037デフォルトの名無しさん
2013/11/03(日) 20:49:31.55コードとエラーの内容張れよ
0038デフォルトの名無しさん
2013/11/03(日) 20:53:17.11すみません
こんなコードで、要するに一度内容を表示してからソートした後の内容を表示したいんです
中に入れるクラスはintとは限りません(簡単のためにintにしてあります)
0039デフォルトの名無しさん
2013/11/03(日) 21:18:19.87デリータを指定出来るところは改良されているが、そういう用途には適してないだろ
0040デフォルトの名無しさん
2013/11/03(日) 21:41:06.77そうですか・・・ありがとうございます
大人しくshared_ptrでも使う事にします
0041デフォルトの名無しさん
2013/11/03(日) 23:47:10.45std::cout << *i.get() << ' ';
こんな感じでコンパイル通るけど?
0042デフォルトの名無しさん
2013/11/04(月) 00:15:07.830043デフォルトの名無しさん
2013/11/04(月) 00:20:30.670044デフォルトの名無しさん
2013/11/04(月) 00:26:44.230045デフォルトの名無しさん
2013/11/04(月) 00:50:55.31gcc4.8.1ですがエラーになります
>>42
エラーにならないコードを書くと>>38になりました
でも実行結果がおかしいですよね
>>44
違います
moveコンストラクタがいつ動くのかしっかりと把握しないとunique_ptrは怖いですね
楽をするならshared_ptr一本です
0046デフォルトの名無しさん
2013/11/04(月) 01:10:27.94>でも実行結果がおかしいですよね
きちんとソートされているように見えますけれど。
>moveコンストラクタがいつ動くのかしっかりと把握しないとunique_ptrは怖いですね
ちょっと言ってる意味が分からないですね。
0047デフォルトの名無しさん
2013/11/04(月) 01:27:35.47低脳はちょっと黙ってて
0048デフォルトの名無しさん
2013/11/04(月) 01:37:20.870049デフォルトの名無しさん
2013/11/04(月) 01:38:22.510050デフォルトの名無しさん
2013/11/04(月) 01:39:33.95動かないソースコードも貼ってないのに
0051デフォルトの名無しさん
2013/11/04(月) 06:34:35.120052デフォルトの名無しさん
2013/11/04(月) 10:47:57.300053デフォルトの名無しさん
2013/11/04(月) 10:50:49.09私の偽物が現れて荒らしているようで申し訳ありません
これでちゃんと通り、正常に動きました
ありがとうございました
for (int i = 0; i < N; i++)
v.push_back(std::unique_ptr<int>(new int(distribution(twister))));
for (auto& a : v)
std::cout << *a.get() << ' ';
std::cout << std::endl;
std::sort(std::begin(v), std::end(v), [](const std::unique_ptr<int>& u, const std::unique_ptr<int>& v) { return *u.get() < *v.get(); });
for (auto&a : v)
std::cout << *a.get() << ' ';
std::cout << std::endl;
0054デフォルトの名無しさん
2013/11/04(月) 13:54:32.08氏ね
0055デフォルトの名無しさん
2013/11/04(月) 14:42:05.870056デフォルトの名無しさん
2013/11/04(月) 14:55:03.47どこが死ぬに値するのか全然理解できませんが
0057デフォルトの名無しさん
2013/11/04(月) 18:24:50.74何がまずいんだっけ?
0058デフォルトの名無しさん
2013/11/04(月) 18:55:08.120059デフォルトの名無しさん
2013/11/04(月) 19:28:11.61右辺値をとってムーブするpush_backがあることを知らないかだろ
0060デフォルトの名無しさん
2013/11/04(月) 19:37:32.080061デフォルトの名無しさん
2013/11/04(月) 20:16:45.13distributionが例外をスローすると困る?
0062デフォルトの名無しさん
2013/11/04(月) 21:00:41.950063デフォルトの名無しさん
2013/11/04(月) 22:32:27.250064デフォルトの名無しさん
2013/11/04(月) 22:33:23.350065デフォルトの名無しさん
2013/11/04(月) 23:13:12.620066デフォルトの名無しさん
2013/11/04(月) 23:38:13.41なんで?
0067デフォルトの名無しさん
2013/11/04(月) 23:42:03.50原因は66のおつむにあるとみていいだろう
0068デフォルトの名無しさん
2013/11/04(月) 23:43:36.95std::cout << std::boolalpha << std::is_sorted(std::begin(v), std::end(v), [](const std::unique_ptr<int>& u, const std::unique_ptr<int>& v) { return *u.get() < *v.get(); }) << std::endl;
これでも付けてみろや
0069デフォルトの名無しさん
2013/11/04(月) 23:59:18.15わざわざunique_ptrなんか持ち出すまでもない
0070デフォルトの名無しさん
2013/11/04(月) 23:59:58.200071デフォルトの名無しさん
2013/11/05(火) 00:35:30.93>>38
>中に入れるクラスはintとは限りません(簡単のためにintにしてあります)
0072デフォルトの名無しさん
2013/11/05(火) 00:54:20.47>>38
>中に入れるクラスはintとは限りません(簡単のためにintにしてあります)
0073デフォルトの名無しさん
2013/11/05(火) 01:21:16.39何書いてるのか知らんけど
0074デフォルトの名無しさん
2013/11/05(火) 08:20:00.660075デフォルトの名無しさん
2013/11/05(火) 09:00:38.120076デフォルトの名無しさん
2013/11/05(火) 15:51:03.57右辺値参照してるのに通るんかい
0077デフォルトの名無しさん
2013/11/05(火) 19:50:58.39universal referenceでぐぐれ
0078デフォルトの名無しさん
2013/11/05(火) 20:11:06.59分かった気がしただけでやっぱりイマイチよく分かってないことに気付く。死にたいorz
0079デフォルトの名無しさん
2013/11/05(火) 20:29:50.06いや
http://d.hatena.ne.jp/faith_and_brave/20080930/1222768173
こういう所に答えは書いてあるけどさ
いまいちピンと来ない
0080デフォルトの名無しさん
2013/11/05(火) 20:33:10.05universal reference 初めて聞いたわ
というかプログラミング言語C++11の日本語訳まだ出ないのか
英語版は持ってるけど目がチカチカする
ISO/IECもあるけど
0081デフォルトの名無しさん
2013/11/05(火) 20:37:36.950082デフォルトの名無しさん
2013/11/05(火) 20:37:39.890083デフォルトの名無しさん
2013/11/05(火) 20:39:16.27C++11本書くから寄付くれって言ってた人?
有耶無耶にして逃げるのかと思ってたら、無事完成したのかw
0084デフォルトの名無しさん
2013/11/05(火) 20:41:17.44書きかけで公開したようだ
0085デフォルトの名無しさん
2013/11/05(火) 20:52:53.78なるほど、事実だけを端的に表現すると「完成はしなかった」ということかw
0086デフォルトの名無しさん
2013/11/05(火) 22:01:44.750087デフォルトの名無しさん
2013/11/05(火) 22:14:37.21呪文のごとく垂れ流ししてるようなつまらなさ。
規格を読んでれば知ってることばかりだし
Exceptional C++とか禿本のように
読んでwktkするものではない。
0088デフォルトの名無しさん
2013/11/05(火) 22:24:20.04コア言語だけは完成、な
ライブラリは執筆の目途すら経ってないらしい
0089デフォルトの名無しさん
2013/11/05(火) 22:27:01.580090デフォルトの名無しさん
2013/11/05(火) 22:51:11.87いやそれでいいんだ
画面で見るのと本で読むのとではなぜか全然違う
0091デフォルトの名無しさん
2013/11/06(水) 00:16:50.510092デフォルトの名無しさん
2013/11/06(水) 01:46:49.72ゴニョ・・・・
0093デフォルトの名無しさん
2013/11/06(水) 07:17:36.23禿の本にも出てるんだっけ?
規格的にはreference collpasingだとか言ったと思う
0094デフォルトの名無しさん
2013/11/06(水) 10:06:47.95collapsing
0095デフォルトの名無しさん
2013/11/06(水) 16:20:04.94うまくまとめてあるページない?
0096デフォルトの名無しさん
2013/11/07(木) 19:03:11.050097デフォルトの名無しさん
2013/11/07(木) 22:00:17.760098デフォルトの名無しさん
2013/11/07(木) 22:07:37.370099デフォルトの名無しさん
2013/11/07(木) 22:33:00.72本質的には引数の数が違うだけのテンプレートを手で書かなくても自動生成してくれるってだけだから
template<class T1> void f(T1 t)
template<class T1, class T2> void f(T1 t1, T2 t2)
template<class T1, class T2, class T3> void f(T1 t1, T2 t2, T3 t3)
...
みたいなコードを書いてたり書きたかったりした場面で使うだけ
0100デフォルトの名無しさん
2013/11/07(木) 23:27:04.00正しい使い方の例はstd::threadのコンストラクター
0101デフォルトの名無しさん
2013/11/08(金) 00:21:50.94variadic templateのありがたみと使い所の一つは理解できるでしょ
0102デフォルトの名無しさん
2013/11/08(金) 07:00:33.48いやemplace_pushの方だろう
0103デフォルトの名無しさん
2013/11/09(土) 04:59:13.420104デフォルトの名無しさん
2013/11/09(土) 05:00:13.920105デフォルトの名無しさん
2013/11/09(土) 11:40:28.99どこ?紅以外にあるのか?
0106デフォルトの名無しさん
2013/11/10(日) 15:35:37.68std::functionの仕様とかみてみ
0107デフォルトの名無しさん
2013/11/10(日) 15:52:03.54何とかしろよハゲ、残った両サイドの毛も全部引き抜くぞ
0108デフォルトの名無しさん
2013/11/10(日) 15:58:11.26そんな提案あったっけ?
0109デフォルトの名無しさん
2013/11/10(日) 16:00:02.530110デフォルトの名無しさん
2013/11/10(日) 16:01:10.48http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2002/n1363.htm
0111デフォルトの名無しさん
2013/11/10(日) 16:05:06.13きもいな
0112デフォルトの名無しさん
2013/11/10(日) 16:14:09.94C++がきもいのは今に始まった事じゃないだろ
ともかく、ポインターに対する委譲のために
ひたすら、関数の引数を同じ名前の関数に引き渡すとかやってらんない。
コンセプトマップさんが生きてりゃ似たようなコト出来たんだがな。
惜しい人をなくしたもんだ。
0113デフォルトの名無しさん
2013/11/10(日) 16:33:28.810114デフォルトの名無しさん
2013/11/10(日) 17:33:24.950115デフォルトの名無しさん
2013/11/10(日) 20:12:45.880116デフォルトの名無しさん
2013/11/10(日) 20:19:08.290117デフォルトの名無しさん
2013/11/10(日) 20:24:40.51誰か>>110を日本語で説明してくれろ
0118デフォルトの名無しさん
2013/11/10(日) 20:35:00.09日本語の参考書は必要
0119デフォルトの名無しさん
2013/11/10(日) 21:01:05.252012では直ってる?
0120デフォルトの名無しさん
2013/11/10(日) 21:01:39.68念のため
0121デフォルトの名無しさん
2013/11/10(日) 21:31:43.45英語読まんでも
this is new stuff
ってとこから後のコード例だけ見れば何となく分かる
委譲する関数一個ずつ書かされるくらいなら今のままでいいよな
最後の方に提案外だけどpublicメンバーを一括委譲する案も出てるけど
個人的にはたぶんそっちしか使わないと思う
書き方は
inline m_pimpl;
とかの方がいいな、inline namespaceとなんか似てるし
0122デフォルトの名無しさん
2013/11/10(日) 21:35:07.140123デフォルトの名無しさん
2013/11/10(日) 22:06:33.22委譲する関数名を書くのはIDEのコード補完が助けてくれそうな気がする。
ただ、usingだと後に続くのがネームスペースなのが委譲関数なのか特定できない気がする。
using以外の新しいキーワード導入してほしい。
0124デフォルトの名無しさん
2013/11/10(日) 22:13:59.050125デフォルトの名無しさん
2013/11/10(日) 22:14:15.98関係ないけどratioはここが美しいなw
typedef ratio<1, (_LONGLONG)1000000000 * 1000000000> atto;
typedef ratio<1, (_LONGLONG)1000000 * 1000000000> femto;
typedef ratio<1, (_LONGLONG)1000 * 1000000000> pico;
typedef ratio<1, 1000000000> nano;
typedef ratio<1, 1000000> micro;
typedef ratio<1, 1000> milli;
typedef ratio<1, 100> centi;
typedef ratio<1, 10> deci;
typedef ratio<10, 1> deca;
typedef ratio<100, 1> hecto;
typedef ratio<1000, 1> kilo;
typedef ratio<1000000, 1> mega;
typedef ratio<1000000000, 1> giga;
typedef ratio<(_LONGLONG)1000 * 1000000000, 1> tera;
typedef ratio<(_LONGLONG)1000000 * 1000000000, 1> peta;
typedef ratio<(_LONGLONG)1000000000 * 1000000000, 1> exa;
0126デフォルトの名無しさん
2013/11/10(日) 22:18:57.79ソースが巨大AAというのも探せばありそうだなw
0127デフォルトの名無しさん
2013/11/10(日) 22:24:55.62auto lamda1 = [](int a) { return (a * 2) << 2; };
auto lamda2 = [](int a) { return (a * 2) << 2; };
lamda1 = lamda1; // 1)
lamda1 = lamda2; // 2)
1)はOK
0128デフォルトの名無しさん
2013/11/10(日) 22:26:43.930129デフォルトの名無しさん
2013/11/10(日) 22:31:09.54#if で囲まれてるところも余さず引用しなきゃw
typedef ratio<1, (_LONGLONG)1000000 * 1000000000 * 1000000000> yocto;
typedef ratio<1, (_LONGLONG)1000 * 1000000000 * 1000000000> zepto;
typedef ratio<1, (_LONGLONG)1000000000 * 1000000000> atto;
typedef ratio<1, (_LONGLONG)1000000 * 1000000000> femto;
typedef ratio<1, (_LONGLONG)1000 * 1000000000> pico;
typedef ratio<1, 1000000000> nano;
typedef ratio<1, 1000000> micro;
typedef ratio<1, 1000> milli;
typedef ratio<1, 100> centi;
typedef ratio<1, 10> deci;
typedef ratio<10, 1> deca;
typedef ratio<100, 1> hecto;
typedef ratio<1000, 1> kilo;
typedef ratio<1000000, 1> mega;
typedef ratio<1000000000, 1> giga;
typedef ratio<(_LONGLONG)1000 * 1000000000, 1> tera;
typedef ratio<(_LONGLONG)1000000 * 1000000000, 1> peta;
typedef ratio<(_LONGLONG)1000000000 * 1000000000, 1> exa;
typedef ratio<(_LONGLONG)1000 * 1000000000 * 1000000000, 1> zetta;
typedef ratio<(_LONGLONG)1000000 * 1000000000 * 1000000000, 1> yotta;
0130デフォルトの名無しさん
2013/11/10(日) 22:39:01.24メンバにラムダを持つクラスが作れないってことか
0131デフォルトの名無しさん
2013/11/10(日) 22:40:55.44つ function
0132デフォルトの名無しさん
2013/11/10(日) 22:46:06.470133デフォルトの名無しさん
2013/11/10(日) 22:49:47.26おっと、それはVC++がC++11対応を終えるまで待っていただこう
0134デフォルトの名無しさん
2013/11/10(日) 22:51:10.600135デフォルトの名無しさん
2013/11/10(日) 22:58:58.72重いよー
0136デフォルトの名無しさん
2013/11/10(日) 23:25:06.08(OSのエントリポイントをコードできないという意味か?)
C++は最高の柔軟性を持っている。アセンブラを除けば他の言語に出来て
C++に出来ない事は存在しない
0137デフォルトの名無しさん
2013/11/10(日) 23:29:29.850138デフォルトの名無しさん
2013/11/10(日) 23:37:58.190139デフォルトの名無しさん
2013/11/10(日) 23:43:02.490140デフォルトの名無しさん
2013/11/10(日) 23:56:02.18>>127
0141デフォルトの名無しさん
2013/11/10(日) 23:57:21.87記述方式と言語の能力をごっちゃにしてる当たり「高級」言語しか使えないの丸見え
0142デフォルトの名無しさん
2013/11/11(月) 00:11:14.72つまりは「同じであることに依存してはならない」ということだ
C++ の元来のポリシーからして複数の typedef や typename が
たまたま同じなら通るわけで、127 が NG なのは唐突な印象だが
0143デフォルトの名無しさん
2013/11/11(月) 00:12:16.57usingで選択、とかならいいな
んでusing指定はdecrarator-idだけ指定すればOKで
必要ならdeclarator全体書けば特定のoverloadが指定できるとか
class A {
void f();
void f(int);
void g();
void g() const;
};
class B {
inline A impl using { f(int), g };
};
とか
まあ、そんな大きくコア言語いじるほど欲しい機能じゃないけど…
>>123
IDEに任せるなら今でもやろうと思えば可能なような
あとn1363のはusing identifier { }だけど、名前空間でそんなのあるっけ?
>>122
n1363の別名定義は=の左右の向きが受け入れがたいよね
0144デフォルトの名無しさん
2013/11/11(月) 00:16:18.11古い言語でもPascalの関数内関数と同じ機械語パターンはC++のラムダじゃ吐けないが
0145デフォルトの名無しさん
2013/11/11(月) 00:17:40.35標準規格のほうが規格違反。
0146デフォルトの名無しさん
2013/11/11(月) 00:18:55.74結局記述方式の問題だろ?
0147デフォルトの名無しさん
2013/11/11(月) 00:28:12.95一致を狙ってくる意図のほうだと思うが
0148デフォルトの名無しさん
2013/11/11(月) 00:33:43.08記述方式を否定したら何も残らん
0149デフォルトの名無しさん
2013/11/11(月) 00:41:27.940150デフォルトの名無しさん
2013/11/11(月) 00:55:07.19C++03の時点でusingをclass内に書くとメンバー関数の
アクセス権昇格と降格に使えるようになってるから問題ない。
C++03の知識すら無いのにこのスレくんな
0151デフォルトの名無しさん
2013/11/11(月) 01:08:34.24戻り値で得たオブジェクトに機能追加する際大活躍するぞ
std::unique_ptr< Base > base = Function();
Extention extention = std::move( base );
extension.BaseFunction();//Base型に自動委譲された関数
extension.ExtendFunction();//Extensionで追加した関数
IDEで自動生成すればいいという話も出てるが、
委譲先の型に関数追加するたびに自動生成とかやっとられん。
特に既にライブラリー化されたものだと自動生成は使えない。
0152デフォルトの名無しさん
2013/11/11(月) 02:08:13.18そういえばスマートポインタが絡むとどう宣言するか難しいな
0153デフォルトの名無しさん
2013/11/11(月) 07:06:35.91自動で呼ばれる仕様にしとけばいいんじゃね。
委譲用の関数がコンパイル時に自動生成される実装に
なってりゃそれ程難しくもない。
0154デフォルトの名無しさん
2013/11/11(月) 13:16:54.800155デフォルトの名無しさん
2013/11/11(月) 14:03:59.010156デフォルトの名無しさん
2013/11/11(月) 14:31:55.45多重継承じゃポインターは継承できないぞ
0157デフォルトの名無しさん
2013/11/11(月) 15:33:24.450158デフォルトの名無しさん
2013/11/11(月) 23:00:37.293次BezierとSplineを追加したいなんて時に委譲すんだが
かったるいんだよな。特に委譲先のメンバーが20個以上あるような場合。
0159デフォルトの名無しさん
2013/11/12(火) 00:22:39.310160デフォルトの名無しさん
2013/11/12(火) 08:45:52.81誤爆か?
0161デフォルトの名無しさん
2013/11/21(木) 12:03:51.85http://ideone.com/LDs6Av
2つのクラスの間でoperatorを定義したいのですが、先行宣言した方のクラスではdecltypeが書けません。
これをdecltypeを使えるようにするにはどのように書けば良いのでしょうか?
この例ではdoubleと書いてありますが、templateで他の型も使えるようにしたいと思っています。
0162デフォルトの名無しさん
2013/11/21(木) 12:57:06.260163デフォルトの名無しさん
2013/11/21(木) 14:05:23.08ありがとうございます
http://ideone.com/WPhg2Q
これで行けそうです
classの中でoperator*を定義しようとすると、もう一つのclassのdがprivateで
型を取得出来ないので、アクセサを付けるとカプセル化を破る事になるし、
だったらfriendでoperator*を外部に関数で定義した方が良さそうでした
0164デフォルトの名無しさん
2013/11/22(金) 07:58:38.520165デフォルトの名無しさん
2013/11/22(金) 10:45:50.90初心者スレは03までじゃないとスレチな気が
0166デフォルトの名無しさん
2013/11/22(金) 12:34:18.94スレタイ見て物を言え
0167デフォルトの名無しさん
2013/11/22(金) 13:24:27.31異論をはさむ余地はない
ただし >>163 は decltype なくても typedef で解決できることだね
template <class T>
class A {
public:
typedef T D;
private:
D d;
public:
A(D a) : d(a) {}
};
0168デフォルトの名無しさん
2013/11/22(金) 13:34:32.78typeを外に晒してもoperatorの戻すtypeは結局decltypeが必要になるんじゃね?
どんなtypeとどんなtypeを演算するのかわからないんだから
0169デフォルトの名無しさん
2013/11/22(金) 14:16:20.77それは確かに C++11 で改良された点だが
cout<< に流せる型なら特殊化でもしておけば?
class T は理屈の上ではあらゆる型だが
class A で達成しようとしている目的から外れすぎた
馬鹿げた T はシカトってのもよく使う手だね
C++11 なら、これも type_traits や static_assert でもうちっと善処できるけど
0170デフォルトの名無しさん
2013/11/22(金) 14:17:40.69どんな型でも受けたいんだから
0171デフォルトの名無しさん
2013/11/22(金) 14:28:49.500172デフォルトの名無しさん
2013/11/22(金) 14:29:55.90operator * では無理だけど、そんなら普通の関数だし
0173デフォルトの名無しさん
2013/11/22(金) 14:42:23.800174デフォルトの名無しさん
2013/11/22(金) 17:46:59.67特殊化されてない同名メソッドと
型に付随する特定のメソッドとは別概念じゃん?
0175デフォルトの名無しさん
2013/11/22(金) 17:51:22.080176デフォルトの名無しさん
2013/11/22(金) 18:03:43.310177デフォルトの名無しさん
2013/11/22(金) 18:18:17.64やだね、べろべろばー
0178デフォルトの名無しさん
2013/11/22(金) 18:50:08.400179デフォルトの名無しさん
2013/11/22(金) 20:29:56.47煽れば何か見せてもらえると思ってんだろバーカ
0180デフォルトの名無しさん
2013/11/22(金) 23:43:06.640181デフォルトの名無しさん
2013/11/23(土) 02:17:07.600182デフォルトの名無しさん
2013/11/23(土) 07:24:06.67class num {
double a;
struct num2 { double a; num2(double src) : a(src) { } };
public:
num(double src) : a(src) { }
const num2 operator *() const { return num2(a); }
double operator *(const num2& b) const { return pow(a, b.a); }
double operator *(const num& b) const { return a * b.a; }
};
int main()
{
num a(3.0), b(4.0);
double c = a * b; //12
double d = a ** b; //81
return 0;
}
0183デフォルトの名無しさん
2013/11/23(土) 07:59:59.46としてもっと完全に隠蔽すべきだったな
0184デフォルトの名無しさん
2013/11/23(土) 11:22:58.52スレ違いだボケ
0185デフォルトの名無しさん
2013/11/23(土) 12:36:41.30何かよくわからん
0186デフォルトの名無しさん
2013/11/23(土) 13:07:54.38このスレで聞くな
0187デフォルトの名無しさん
2013/11/23(土) 13:22:08.540188デフォルトの名無しさん
2013/11/23(土) 13:23:37.41num2 無しにしたらどうよ
class num {
double a;
public:
num(double src) : a(src) { }
operator double() const { return a; }
const num *operator *() const { return this; }
const num operator *(const num *p) const { return pow(a, *p); }
const num operator *(const num &amp;b) const { return a * b; }
};
int main()
{
num a(3.0), b(4.0), x(0), y(0);
double c = a * b; //12
double d = a ** b; //81
x = a * b; //12
y = a ** b; //81
return 0;
}
0189デフォルトの名無しさん
2013/11/23(土) 13:28:58.41荒らしかよおめーは
0190デフォルトの名無しさん
2013/11/23(土) 13:47:35.560191デフォルトの名無しさん
2013/11/23(土) 17:19:44.89C++14で何か変更あるの
0192デフォルトの名無しさん
2013/11/23(土) 18:18:35.600193デフォルトの名無しさん
2013/11/23(土) 18:34:32.770194デフォルトの名無しさん
2013/11/23(土) 20:30:20.810195デフォルトの名無しさん
2013/11/24(日) 01:04:48.21http://www.amazon.co.jp/C-Concurrency-Action-Practical-Multithreading/dp/1933988770
0196193
2013/11/24(日) 02:46:41.05asyncができそこないって件kwsk!
0197デフォルトの名無しさん
2013/11/24(日) 04:47:47.62そしたら、
「それasync違うじゃん、止まってほしくない時まで止まっちゃうの問題じゃね?非同期処理を行いたい時はUIスレッド止めずにバックグラウンドで何かしたいときとかなのに!」
とか、
「非同期ならそのスレッド止めずに結果はコールバックで受け取るようにすべきで、そのライブラリ無いのおかしくない?でもそれ作ったらいまのasyncいらんよね。」
とか、
「Windowsだとこんな使い方してもスレッド起動のコストでかすぎて大抵遅くなるだけだわー」
とか、色々なネガティブ要素でもういっそdeprecateにしたほうがいいんじゃないか?って話しになってるんだと思ってる。
個人的にはできそこないって言うほどダメなもんでもないと思うけど・・・。
違ったら詳しいひとツッコミよろ
0198デフォルトの名無しさん
2013/11/24(日) 08:28:19.73http://www.amazon.co.jp/The-Standard-Library-Tutorial-Reference/dp/0321623215
これいいな
C++11わからんとか言ってるやつはここのサンプルプログラムを手で打ち込んで全部試してみれ
英語版しかないのが玉に瑕だがそんなに難しい英語じゃない
0199デフォルトの名無しさん
2013/11/24(日) 10:01:08.300200デフォルトの名無しさん
2013/11/24(日) 11:33:31.840201デフォルトの名無しさん
2013/11/24(日) 11:38:02.860202デフォルトの名無しさん
2013/11/24(日) 11:55:58.660203デフォルトの名無しさん
2013/11/24(日) 12:57:42.870204デフォルトの名無しさん
2013/11/24(日) 14:05:48.12これデフォルトのデリータがdeleteなんだな
だからカスタムデリータでdelete[]をラムダ式か何かで指定するか、
std::default_delete()を使わないといけないのか
0205デフォルトの名無しさん
2013/11/24(日) 14:42:02.32なぜだろ?
0206デフォルトの名無しさん
2013/11/24(日) 16:10:40.65オブジェクトを複数のオブジェクトで共有するならまだしも、
生配列を複数のオブジェクトで共有して何に使うんだよ。
要は生配列共有すんなって事だ。
0207デフォルトの名無しさん
2013/11/24(日) 16:20:29.44C++の動的配列って中途半端だよね。
delete[]で各要素のデストラクタ呼べるように
サイズとか内部的に持っているのに普通には使えないとか。
deleteとdelete[]使い分けろとか。
0208デフォルトの名無しさん
2013/11/24(日) 16:38:04.69new T;で生成したオブジェクトdeleteする時にnew T[];とどうやって区別するんだ。
常にnew T[]した時余計な情報載せるのか?
0209デフォルトの名無しさん
2013/11/24(日) 16:59:52.30デストラクターが無い場合に要素数を持たないようメモリをケチること許す言語仕様ゆえ
0210デフォルトの名無しさん
2013/11/24(日) 17:07:57.10Cの配列と互換性持たせるためでもあるな。
0211デフォルトの名無しさん
2013/11/24(日) 17:13:06.24使う側が見たnew式の結果は区別が付かないだから
0212デフォルトの名無しさん
2013/11/24(日) 17:19:54.68配列の時だけってか?
0213デフォルトの名無しさん
2013/11/24(日) 21:23:17.89unique_ptrには他のスマポと違ってコピーコンストラクタがないから
配列版=>単一版への誤ったコピーが起きにくい。
0214デフォルトの名無しさん
2013/11/24(日) 22:22:47.31ぶぁか
0215デフォルトの名無しさん
2013/11/24(日) 23:26:15.38単体のnewに要素数情報乗っけられるのも困るな
1000回newしたら8000バイト近くdeleteの為だけに主記憶領域食われるんだからな
0216デフォルトの名無しさん
2013/11/24(日) 23:41:30.04テンプレートコンストラクタだから正しく言うとコピーコンストラクタじゃない
0217デフォルトの名無しさん
2013/11/24(日) 23:49:40.230218デフォルトの名無しさん
2013/11/25(月) 00:09:23.900219デフォルトの名無しさん
2013/11/25(月) 01:00:10.110220デフォルトの名無しさん
2013/11/25(月) 06:19:02.67unique_ptr<T[]> a(new T[8]>;
unique_ptr<T> b(a>;
ってのが通ったらまずいが、unique_ptrには下のコンストラクタがないから大丈夫。
shared_ptr<T[]> c(new T[16]>;
shared_ptr<T> d(c);
ってのが通ったらまずいが、shared_ptr<T[]>なんてものはないから大丈夫。
0221デフォルトの名無しさん
2013/11/25(月) 09:59:08.91これどうなってんの?
0222デフォルトの名無しさん
2013/11/25(月) 21:53:44.84shared_ptrで管理されてるオブジェクトがなんらかの事情で普通のポインタで渡されたときに
そのポインタから元のshared_ptrと管理権を共有するshared_ptrを得るというイディオムで使うんだけどな
0223デフォルトの名無しさん
2013/11/25(月) 22:26:31.25のコラム2
0224デフォルトの名無しさん
2013/11/25(月) 22:40:55.340225デフォルトの名無しさん
2013/11/25(月) 22:42:55.82「shared_ptrで管理されてるオブジェクトがなんらかの事情で普通のポインタで渡されたときに
そのポインタから元のshared_ptrと管理権を共有するshared_ptrを得る」というイディオム
長えよ
0226デフォルトの名無しさん
2013/11/26(火) 00:02:08.160227デフォルトの名無しさん
2013/11/26(火) 21:33:57.58要約値を鍵にした連想配列(hash map)に
記憶領域の番地を格納。
boost::shared_from_thisを実行した際、
この連想配列からthisの持つ番地で、
boost::shared_ptrをとってくるって仕組みじゃないか?
0228デフォルトの名無しさん
2013/11/26(火) 22:00:12.84後はshared_ptrのコンストラクタがenable_shared_thisを継承したクラスを特別扱いしている
0229デフォルトの名無しさん
2013/11/26(火) 22:40:40.370230デフォルトの名無しさん
2013/11/27(水) 09:48:18.320231デフォルトの名無しさん
2013/11/27(水) 18:38:48.13boost::shared_ptrで確保した、boost::shared_ptrを返した時。
特に片方が共同所有権としてつかわれ、
片方がEventの委譲用とかよくありがちじゃん。
0232デフォルトの名無しさん
2013/11/27(水) 18:42:03.660233デフォルトの名無しさん
2013/11/27(水) 19:47:52.61二重delete
0234デフォルトの名無しさん
2013/11/27(水) 21:00:11.72shared_ptrのオブジェクトの管理領域は次のようになっている
管理領域の参照カウンタ、オブジェクトの参照カウンタ、オブジェクトへのポインタ、デリータへのポインタ
ここで、shared_ptrは管理領域、オブジェクト両方のカウンタを増減させる。 weak_ptrは管理領域のカウンタのみを変更する。
shared_ptrの破棄によってオブジェクトのカウンタが0になったとき、オブジェクトは解放される。
しかし、管理領域は全てのweak_ptrが破棄されるまで生存する
そして、weak_ptrからshared_ptrを構築する際には、shared_ptrの管理領域へのポインタをweak_ptrが指す管理領域へのポインタへと設定している
0235デフォルトの名無しさん
2013/11/27(水) 21:02:36.06enable_shared_from_thisは内部にweak_ptrを持っていて、shared_ptrのコンストラクタはenable_shared_from_thisを継承したクラスに対しては特殊な動作、すなわち内部のweak_ptrに管理領域へのポインタを設定する動作をする
shared_from_this関数は内部のweak_ptrからshared_ptrを構築する関数で、前述のように同じ管理領域を指すポインタが新たに構築される
全てのスマートポインタが同じ管理領域を指しているので、二重解放は起こらない
0236デフォルトの名無しさん
2013/11/28(木) 01:04:05.46> newして返したboost::shared_ptr
わからん。何を new ?返すってどこからどこに?
> boost::shared_ptrで確保
わからん。 shared_ptr に何かを「確保」する機能なんて無いよね?
さっぱりわからん。
0237デフォルトの名無しさん
2013/11/28(木) 10:41:28.04こいつはたぶんshared_ptrそのものを理解してない
0238デフォルトの名無しさん
2013/11/28(木) 19:18:57.03浅知恵で細工して可読性もパフォーマンスもセキュリティもぶち壊す
C++ではよくあること
0239デフォルトの名無しさん
2013/11/28(木) 22:25:36.50途中で生ポインタに変わっちゃうんであきらめたことがあった
class Hage : public Element
{
virtual void accept(Visitor &v){ v.visit(this); } // <- このとき
};
enable_shared_from_this ってのを知っていたらうまいことできたんだろうか
0240デフォルトの名無しさん
2013/11/29(金) 01:14:30.490241デフォルトの名無しさん
2013/11/29(金) 10:18:00.120242デフォルトの名無しさん
2013/11/29(金) 10:37:25.120243デフォルトの名無しさん
2013/11/29(金) 11:42:28.090244デフォルトの名無しさん
2013/11/29(金) 12:21:41.450245デフォルトの名無しさん
2013/11/29(金) 18:26:52.040246デフォルトの名無しさん
2013/11/29(金) 21:46:12.55Windowsユーザーを嫌いになっても、VC++のことは嫌いにならないください!
0247デフォルトの名無しさん
2013/11/30(土) 07:24:14.220248デフォルトの名無しさん
2013/11/30(土) 12:44:25.520249デフォルトの名無しさん
2013/11/30(土) 15:16:58.200250デフォルトの名無しさん
2013/11/30(土) 21:20:02.980251デフォルトの名無しさん
2013/12/01(日) 09:43:34.66void foo (T val)
{
if (std::is_reference<T>())
std::cout << val << " is reference." << std::endl;
else
std::cout << val << " is not reference." << std::endl;
if (std::is_const<T>())
std::cout << val << " is const." << std::endl;
else
std::cout << val << " is not const." << std::endl;
}
int main()
{
int x;
foo(std::ref(x));
foo(std::cref(x));
}
これちゃんと動く?俺の所では両方とも"not"になってしまうんだが
gcc4.8.1
0252デフォルトの名無しさん
2013/12/01(日) 09:53:12.440253デフォルトの名無しさん
2013/12/01(日) 10:38:08.550254デフォルトの名無しさん
2013/12/01(日) 11:05:40.87const int &自体はconstじゃないから
0255デフォルトの名無しさん
2013/12/01(日) 13:17:53.770256デフォルトの名無しさん
2013/12/01(日) 13:55:11.130257デフォルトの名無しさん
2013/12/01(日) 14:07:07.83>>251のfooのTは
1番目 std::reference_wrapper<int>
2番目 std::reference_wrapper<const int>
になる
0258デフォルトの名無しさん
2013/12/01(日) 15:15:10.610259デフォルトの名無しさん
2013/12/01(日) 15:17:50.10C++ Standard Library 2nd P132
5.4.3 Reference Wrappers
Class std::reference_wrapper<>, declared in <functional>, is used primarily to “feed” references
to function templates that take their parameter by value. For a given type T, this class provides
ref() for an implicit conversion to T& and cref() for an implicit conversion to const T&, which
usually allows function templates to work on references without specialization.
For example, after a declaration such as
template <typename T>
void foo (T val);
by calling
int x;
foo (std::ref(x));
T becomes int&, whereas by calling
int x;
foo (std::cref(x));
T becomes const int&.
0260デフォルトの名無しさん
2013/12/01(日) 16:27:32.400261デフォルトの名無しさん
2013/12/06(金) 19:51:23.63これは難しい・・・
次はC++ Concurrency in Actionを読むけどどこまで理解出来るやら・・・
しかしこれを理解しないとマルチコアのメリットが活かせないわけだしなあ
0262デフォルトの名無しさん
2013/12/06(金) 20:17:59.91マルチスレッドが難しい→まあそうだがスレ違いだ
C++のasyncが難しい→んなもの知らなくてもマルチコアは活かせる
0263デフォルトの名無しさん
2013/12/06(金) 20:26:17.66GC周りと一緒で。
0264デフォルトの名無しさん
2013/12/06(金) 20:27:53.550265デフォルトの名無しさん
2013/12/06(金) 21:00:59.870266デフォルトの名無しさん
2013/12/06(金) 21:25:50.970267デフォルトの名無しさん
2013/12/06(金) 21:33:06.890268デフォルトの名無しさん
2013/12/06(金) 21:39:56.320269デフォルトの名無しさん
2013/12/06(金) 21:58:36.96そんなことも知らないの? 馬鹿なの? 死ぬの?
0270デフォルトの名無しさん
2013/12/06(金) 22:02:52.04相手にしないでおこう
OpenMPはスレ違いだが、threadやasyncはスレ違いではない
れっきとしたC++11の話題だ
0271デフォルトの名無しさん
2013/12/06(金) 22:11:13.550272デフォルトの名無しさん
2013/12/06(金) 22:58:05.20ここはC++第三版(2011/9/1改訂)のスレではない
馬 鹿
0273デフォルトの名無しさん
2013/12/07(土) 00:41:02.430274デフォルトの名無しさん
2013/12/07(土) 02:34:31.91async退学の話ならして良い
0275デフォルトの名無しさん
2013/12/07(土) 05:34:44.72VSに入れられるんだからそれで遊べる
0276デフォルトの名無しさん
2013/12/07(土) 11:24:24.940277デフォルトの名無しさん
2013/12/07(土) 11:27:15.41委員会ドラフトってどうなったの?
無かったことにされるレベルで変更入りまくり?
0278デフォルトの名無しさん
2013/12/07(土) 13:37:43.490279デフォルトの名無しさん
2013/12/07(土) 13:51:57.55http://toro.2ch.net/test/read.cgi/tech/1384818417/
【初心者歓迎】C/C++室 Ver.88【環境依存OK】
http://toro.2ch.net/test/read.cgi/tech/1384061494/
0280デフォルトの名無しさん
2013/12/07(土) 15:19:00.84特別扱いする必要は無いんだお
0281デフォルトの名無しさん
2013/12/07(土) 16:13:58.10しかし今のC++スレの質の低下はひどいもんだ
あそこでスレッドやらasyncを質問して果たして答えてくれるのやら
試してみよう
0282デフォルトの名無しさん
2013/12/07(土) 18:48:32.640283デフォルトの名無しさん
2013/12/07(土) 19:03:22.930284デフォルトの名無しさん
2013/12/07(土) 19:48:05.55VC2013?
>>281
実際にthread,asyncを使っている奴は少ないだろうからな
対応遅すぎたって感じだし
0285デフォルトの名無しさん
2013/12/07(土) 21:20:09.07threadは実際にマルチスレッドプログラミングをするにはプリミティブ過ぎて使いにくいから
asyncが考えられたんだろうが、まだ完成度が低い
それにデッドロックやレース状態、リソーススタベーションを起こさずにスラスラプログラムを
書ける奴がどの位いるやら
C++14でもっとまともになるっしょ
0286デフォルトの名無しさん
2013/12/07(土) 21:36:02.040287デフォルトの名無しさん
2013/12/07(土) 22:04:49.66"clang visual studio 2013" とかでぐぐればいくらでも出てくるだろ
0288デフォルトの名無しさん
2013/12/08(日) 05:08:13.45禿も、またプログラミング言語C++書き直しやん。
0289デフォルトの名無しさん
2013/12/08(日) 08:32:22.14一番対応が早くて楽だしな
0290デフォルトの名無しさん
2013/12/08(日) 11:06:23.03ぜんぜんないよ!失敗談はたまにでてくるけど
0291デフォルトの名無しさん
2013/12/08(日) 13:11:37.440292デフォルトの名無しさん
2013/12/08(日) 14:14:26.480293デフォルトの名無しさん
2013/12/08(日) 14:48:39.05今すぐC++14が使える
0294デフォルトの名無しさん
2013/12/08(日) 15:39:04.900295デフォルトの名無しさん
2013/12/08(日) 16:43:50.07clang関係のリクルート出してた件?
VSで採用って話までは疑問視されてたような
でも何やらされてるんだろうね
0296デフォルトの名無しさん
2013/12/08(日) 17:19:07.49疑問視されてたって話は知らなかったけど
IntelliSenseとかIDE側で使っているのかも知れないね
0297デフォルトの名無しさん
2013/12/08(日) 17:29:11.81使ってたらコードが混ざってるだろ。
VSでclangを使うことを想定した作業とか、
差し替えた時の互換性を高める作業とか、そのへんじゃねーの?
0298デフォルトの名無しさん
2013/12/08(日) 17:43:25.22http://hsafoundation.com/bringing-camp-beyond-windows-via-clang-llvm/
0299デフォルトの名無しさん
2013/12/08(日) 19:52:19.02規格のC++じゃ時代遅れなのかもな。C#で脱C++を開始した感じがあるからな
0300デフォルトの名無しさん
2013/12/08(日) 20:26:03.490301デフォルトの名無しさん
2013/12/08(日) 20:35:43.88規格のC++じゃヘテロ対応できないだろ。GPU載っているCPUが普通だし
そんなのに対応するのにC++プラスアルファが必要で独自拡張。
0302デフォルトの名無しさん
2013/12/08(日) 21:02:22.520303デフォルトの名無しさん
2013/12/09(月) 00:05:43.360304デフォルトの名無しさん
2013/12/09(月) 00:24:11.61clangをビルドしたいのかclangでビルドしたいのか。
0305デフォルトの名無しさん
2013/12/09(月) 00:26:22.84それ、プラスするもんであって後続として元の物を置換するもんではないだろ。
0306デフォルトの名無しさん
2013/12/09(月) 00:45:43.62C++AMP、openCL、CUDA等のGPUベンダの言語...
先端大好きのC++14野郎のお前らはGPGPUプログラムしている?
0307デフォルトの名無しさん
2013/12/09(月) 00:59:40.49ClangをVS2013に統合したいんじゃないのかな
0308デフォルトの名無しさん
2013/12/09(月) 01:04:03.940309デフォルトの名無しさん
2013/12/09(月) 01:09:58.35いやだから…
単に「clangとの互換性向上(統合含む)目的」とか
「MSがC++ AMP絡みでclang組み込む目的」とか
って推測なら、ああそうかもね、で済む話だろ
何故か>>299が「C++ AMP」が「MSのC++後続の標準の言語」
だとか変なこと言い出すから>>300みたいなツッコミされてんだよ
0310デフォルトの名無しさん
2013/12/09(月) 01:16:50.36アンカミスかよ…変だとは思ったけど>>299,301ならやりかねないと思ってその流れでレスしちまったorz
まず間違いなくそっちだろうけど、「clang"の"ビルド」と「clang"で"ビルド」を間違えてるなら指摘すべきじゃないの?
0311デフォルトの名無しさん
2013/12/09(月) 06:35:27.00visualCみたいに使えるのかな?
他にやることあって出来ないんだよね
0312デフォルトの名無しさん
2013/12/09(月) 06:50:43.070313303
2013/12/09(月) 10:30:36.340314デフォルトの名無しさん
2013/12/09(月) 10:34:23.110315デフォルトの名無しさん
2013/12/09(月) 10:50:48.500316デフォルトの名無しさん
2013/12/09(月) 12:20:25.97Windows でやりたいのなら
教えて君には厳しすぎる。あきらめろん
ちなみに自称上級者の俺も(ry
0317デフォルトの名無しさん
2013/12/10(火) 08:42:48.32マジメに調べてんの?
http://www.ishani.org/web/articles/code/clangvsx/
0318デフォルトの名無しさん
2013/12/10(火) 09:06:11.37http://llvm.org/docs/GettingStartedVS.html
こんなんもあるぞ
0319デフォルトの名無しさん
2013/12/10(火) 09:06:59.17cのすれで聞けよ
0320デフォルトの名無しさん
2013/12/10(火) 16:08:58.08炎上学習法という正式名称もあるみたいだけどw、このスレには通用しないから
0321デフォルトの名無しさん
2013/12/10(火) 18:11:33.09最悪
お前と同じ
0322デフォルトの名無しさん
2013/12/13(金) 23:25:05.29D言語ってどうなった?消えた?
0323デフォルトの名無しさん
2013/12/13(金) 23:31:56.250324デフォルトの名無しさん
2013/12/13(金) 23:38:21.13Dもそうなるのか?まさかな…
0325デフォルトの名無しさん
2013/12/14(土) 00:23:27.61実用には2003をお使い下さい
0326デフォルトの名無しさん
2013/12/14(土) 00:41:41.83C++er なら割と簡単に Haskell を使い熟せると思うなぁ
0327デフォルトの名無しさん
2013/12/14(土) 05:50:08.94関数を作ったり使ったりはわりと簡単
コンピネータまでいくと概念を理解できるかどうかだけど
問題は副作用の記述が面倒なところ
最初は文字列の表示もよくわからなかったよ
0328デフォルトの名無しさん
2013/12/14(土) 08:27:20.840329デフォルトの名無しさん
2013/12/14(土) 10:37:11.590xとか言い続けて2009年までに出せなかった能無し共の仕事は信用ならない
0330デフォルトの名無しさん
2013/12/14(土) 11:11:50.600331デフォルトの名無しさん
2013/12/14(土) 11:14:27.040332デフォルトの名無しさん
2013/12/14(土) 11:19:59.150333デフォルトの名無しさん
2013/12/14(土) 11:22:07.810334デフォルトの名無しさん
2013/12/14(土) 11:24:18.18concept入らないと出さないでしょ
0335デフォルトの名無しさん
2013/12/14(土) 11:26:45.720336デフォルトの名無しさん
2013/12/14(土) 11:30:12.71メンドくせえな
16進数ってのを分かり易いように0x付けただけだよ
じゃあもう一度な
16進数で0b年に出たんだから良いではないか
0337デフォルトの名無しさん
2013/12/14(土) 11:40:16.54autoは使える
0338デフォルトの名無しさん
2013/12/14(土) 11:50:00.42もともと09年までに出す予定で0xと称していたものを
出せなかったら「0xを0?hと解釈すれば問題ない」などとのたまう
最低のゴミクズだな。
こういう奴らは次は「35進数と解釈すれば…」と言い出すに違いない
0339デフォルトの名無しさん
2013/12/14(土) 12:15:29.95って言うか、お前本気で言ってるのか?
禿の洒落なんだが…
0340デフォルトの名無しさん
2013/12/14(土) 12:23:49.16ところでハゲって誰?
0341デフォルトの名無しさん
2013/12/14(土) 12:48:15.83俺、ストラウストラップ(`ェ´)ビャーネ
0342デフォルトの名無しさん
2013/12/14(土) 13:33:26.32C++1yにboost::format相当は入るかな?
0343デフォルトの名無しさん
2013/12/14(土) 13:37:26.120344デフォルトの名無しさん
2013/12/14(土) 14:19:02.83まあ便利だけど、あれだけのためにboostを入れる必要はないな。
0345デフォルトの名無しさん
2013/12/14(土) 14:20:22.28今更変えると逆にトラブる
0346デフォルトの名無しさん
2013/12/14(土) 16:42:55.67printf ライクに出力できるように
しようってのはペーパー出てた気がする。
0347デフォルトの名無しさん
2013/12/15(日) 21:26:22.20アイエスオーとか買って読んでるのけ?
そんなの買う金あったらソープ池よ
0348デフォルトの名無しさん
2013/12/15(日) 21:27:12.71お前はアホか
0349デフォルトの名無しさん
2013/12/15(日) 23:39:03.96特にこの季節、余り物オーラ見抜けば安いぞ
使い捨てませ
0350デフォルトの名無しさん
2013/12/16(月) 11:33:14.99御教示ください
0351デフォルトの名無しさん
2013/12/16(月) 15:40:20.77触っちゃダメだよ、ひどい目に遭うよ
0352デフォルトの名無しさん
2013/12/16(月) 16:49:37.220353デフォルトの名無しさん
2013/12/16(月) 19:54:45.71C++2014ドラフトはタダだけど
0354デフォルトの名無しさん
2013/12/16(月) 20:46:30.59っていうか、 C++11 を見るくらいなら C++14 のドラフトの方がいいじゃん。
0355デフォルトの名無しさん
2013/12/16(月) 21:50:35.250356デフォルトの名無しさん
2013/12/16(月) 22:35:41.600357デフォルトの名無しさん
2013/12/16(月) 23:58:18.44規格に何を求めてるんだよ。求めるのは絶対的に正しい仕様だろ。
99%内容が同じでもドラフトに価値など無い。
おおざっぱに勉強したきゃそこらのサイトでも見た方が早い。
0358デフォルトの名無しさん
2013/12/17(火) 00:06:13.45知らない奴は規格なんて縁のない人間なんだよ。
// しかしISOのサイトの広告は何とかならんのか。
0359デフォルトの名無しさん
2013/12/17(火) 21:35:26.59初耳です。
0360デフォルトの名無しさん
2013/12/18(水) 01:02:58.85http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2fISO%2fIEC+14882-2012
も売ってるけど ISO 版
http://webstore.ansi.org/RecordDetail.aspx?sku=ISO%2fIEC+14882%3a2011
も売ってるんだな、これが。安いの INCITS 版だけど。でも一時よりえらい値上がりしてる気が。
0361デフォルトの名無しさん
2013/12/18(水) 05:48:10.460362デフォルトの名無しさん
2013/12/18(水) 17:00:54.23縁のある乞食はドラフトという訳ですね。
規格の話をしたいときにドラフトを持ち出すような
ナンセンスなことをしなければよいけど
0363デフォルトの名無しさん
2013/12/18(水) 19:25:30.50PDFに「しおり」が付いていなくてブチ切れだったでござる。
JIS規格が時々画像のスキャンとか、夜道に気を付けろと言いたい。
0364デフォルトの名無しさん
2013/12/18(水) 19:30:50.23検索できないようにするため、との答え。
2度ぶちぎれですよ!。
0365デフォルトの名無しさん
2013/12/18(水) 19:42:24.380366デフォルトの名無しさん
2013/12/18(水) 19:49:49.93ことで経済産業省はボロ儲け。
そしてC++は企業に見捨てられたので
JIS規格が出せなくなった
0367デフォルトの名無しさん
2013/12/18(水) 20:01:29.41FDISは最終案で、OK出たらそのまま出版なんですけど
0368デフォルトの名無しさん
2013/12/18(水) 20:13:56.06OKが出たFDIS以外にドラフトは無いのか?
0369デフォルトの名無しさん
2013/12/18(水) 20:26:13.66FDISは修正して再提出があるわけだが
「これが本当に最後のファイルドラフト」とか
恥ずかしい
0370デフォルトの名無しさん
2013/12/18(水) 20:31:33.12高々3万円ぐらい買ってやれよ。
江添がメシ食っていけないだろ。
0371デフォルトの名無しさん
2013/12/18(水) 20:38:21.250372デフォルトの名無しさん
2013/12/18(水) 20:52:38.590373デフォルトの名無しさん
2013/12/18(水) 21:00:56.060374デフォルトの名無しさん
2013/12/18(水) 21:04:13.46規格策定にも金はかかるんだから
適切なキャッシュフローのためにも
お布施しておけっていう話だろ
0375デフォルトの名無しさん
2013/12/18(水) 21:18:01.78はよ出せ
0376デフォルトの名無しさん
2013/12/18(水) 21:42:07.79規格団体が制定すりゃ使われるかっていうとそんなことないだろ。
コンパイラがちゃんと追従して、わかりやすい関連書籍も出て皆が使うから規格に意味があるんだ。
ちゃんと産業で使われるなら規格策定なんぞどこかしらの企業がスポンサーに付くわい。
言語のエンドユーザーたるプログラマが直接 ISO やら ANSI やらに金を出すのは適切なキャッシュフローではない。
0377デフォルトの名無しさん
2013/12/18(水) 21:45:41.250378デフォルトの名無しさん
2013/12/18(水) 22:06:23.22それとも、無償でやっているのか。顔合わせてのミーティングとかだと
交通費とかかかるよな。
0379デフォルトの名無しさん
2013/12/18(水) 22:18:37.13規格はよだせ(出して欲しい)
→でも俺は金 払わない
→金はどこかの企業がだせ
この思考がヤバい
0380デフォルトの名無しさん
2013/12/18(水) 22:26:53.370381デフォルトの名無しさん
2013/12/18(水) 22:32:46.33産業全体が効率化されて最終的にエンドユーザーが
メリットを享受できるようにすることだろ。
今のC++1yは規格策定=新機能の開発になっていて
何か違うと思うんだ。
0382デフォルトの名無しさん
2013/12/18(水) 22:47:10.58新機能を開発したい人たちが複数居て、ばらばらにやったら方言が乱立するから、一カ所でやって即規格化しようぜ
ってのが今のC++の規格策定プロセスなわけでしょ?
誰にとってもその方が望ましいと思うんだが
0383376
2013/12/18(水) 22:56:16.55> →でも俺は金 払わない
だってそうだろう。 工作が趣味だからってネジやら合板やらの規格策定に金出すか?
エンドユーザーは金を払って部品を書い、工作指南本を書い、道具を買うけど、
その背景にある規格を一貫させるのは各業界でやるのが筋だろ。
規格策定の分の費用が売り物の値段に上乗せされてたってかまわないが、
直接支援するのは筋が違う。
0384デフォルトの名無しさん
2013/12/18(水) 23:09:23.94「統一された規格を実装したコンパイラーが欲しい」と
「規格書が欲しい」を一緒にするなよ。
前者の人が規格策定行為に直接金払わないのは当たり前。
0385デフォルトの名無しさん
2013/12/18(水) 23:32:58.200386デフォルトの名無しさん
2013/12/18(水) 23:36:49.20どうでも良いことだが
江添は長音表記が通産省労害派(JIS Z 8301)じゃなくて
内閣府1991告示二号派だから別人
・コンパイラー
・コンピューター
・メンバー関数
・コンストラクター
>>385
江添はFDIS推奨らしいから違うだろ?
0387デフォルトの名無しさん
2013/12/18(水) 23:48:00.41落ち武者ネタは禁止します、使用しないでください。
万が一 アスペ落ち武者ネタが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
※ スレタイと>>1をよく読んで下さい
0388デフォルトの名無しさん
2013/12/18(水) 23:50:35.220389デフォルトの名無しさん
2013/12/19(木) 00:19:26.90スレに沿う話題ソースにも非常に有益な御仁だし、話題から外すのは反対だな
偏屈ジジイなのは否定せんけど、アスペ落ち武者呼ばわりされるほど恨み持たれるような事してるのか?w
0390デフォルトの名無しさん
2013/12/19(木) 00:26:52.22本来なら引く手あまたじゃなきゃまずいと。
0391デフォルトの名無しさん
2013/12/19(木) 00:49:09.70好きなことしかやらないんだから。
0392デフォルトの名無しさん
2013/12/19(木) 01:01:26.540393デフォルトの名無しさん
2013/12/19(木) 02:27:13.52ああいうのは本人が面白そうにやってると説得力があるからな。
0394デフォルトの名無しさん
2013/12/19(木) 03:01:12.820395デフォルトの名無しさん
2013/12/19(木) 03:16:02.140396デフォルトの名無しさん
2013/12/19(木) 03:52:41.940397デフォルトの名無しさん
2013/12/19(木) 03:54:30.730398デフォルトの名無しさん
2013/12/19(木) 08:04:48.44JISやISOは企業で使うために制定してるもの
趣味で作る分には規格書不要、コンパイラ付属のマニュアルでも読んどけ
0399デフォルトの名無しさん
2013/12/19(木) 08:16:23.500400デフォルトの名無しさん
2013/12/19(木) 08:40:00.84他のISOに関わったことあるけど、手弁当でした。海外出張年4回と普段のも。規格をネタに解説書書いて出版しましたが、マイナーな規格なので、予想通り初版5000部で絶版しましたし。
0401デフォルトの名無しさん
2013/12/19(木) 08:52:37.492005年くらいまでは会社から支給があったけど、
今はもう持ち出しですよ
普通の勉強会の方が交通費が出ることもあるくらい
0402デフォルトの名無しさん
2013/12/19(木) 13:40:53.430403デフォルトの名無しさん
2013/12/19(木) 14:22:00.930404デフォルトの名無しさん
2013/12/19(木) 14:23:10.68それは援助金を集める担当者がサボっているのが原因に間違いない
0405デフォルトの名無しさん
2013/12/19(木) 14:25:53.72話題にはなるんじゃ
忘年会に集まるような怪しい連中じゃ無理だろ
0406デフォルトの名無しさん
2013/12/19(木) 14:38:54.050407デフォルトの名無しさん
2013/12/19(木) 16:55:18.120408デフォルトの名無しさん
2013/12/19(木) 17:53:56.86→俺は金出さないけど
→どこかの成金企業は金持ってるだろ
この思考がヤバい
0409デフォルトの名無しさん
2013/12/19(木) 18:39:57.38というかさ、C++関係で専業の人間なんていないだろ
えぴさんにしろ、若手だとBoost勉強会の人にしろ、本業は別にあるわけだしさ
C++の専業伝道師のロールモデルなんてないわけで
それでも副業するのが嫌なら、苦労するしかないわいな
0410デフォルトの名無しさん
2013/12/19(木) 19:00:05.270411デフォルトの名無しさん
2013/12/19(木) 19:05:41.210412デフォルトの名無しさん
2013/12/19(木) 19:40:29.11いやになったんじゃなかったっけ
0413デフォルトの名無しさん
2013/12/19(木) 20:10:26.170414デフォルトの名無しさん
2013/12/19(木) 20:12:43.92仕事では他の言語が主でC++が副って奴が多いんじゃないか
0415デフォルトの名無しさん
2013/12/19(木) 20:26:49.22シープラプラなんて既に
天ぷらオナニー用言語だろ
趣味でやるのが正しい使い方
0416デフォルトの名無しさん
2013/12/19(木) 20:52:25.180417デフォルトの名無しさん
2013/12/19(木) 20:56:10.73右辺値山椒だけでご飯3杯はイケる
0418デフォルトの名無しさん
2013/12/19(木) 21:21:41.880419デフォルトの名無しさん
2013/12/19(木) 21:45:24.390420デフォルトの名無しさん
2013/12/19(木) 21:58:05.96ファンとして悲しい‥
0421デフォルトの名無しさん
2013/12/19(木) 22:00:45.88誰だか知らんがソイツは
0422デフォルトの名無しさん
2013/12/19(木) 22:09:05.64リピーターを生み出す良い本とはそういうものだ!w
0423デフォルトの名無しさん
2013/12/19(木) 22:17:23.98それpmokyだろ
0424デフォルトの名無しさん
2013/12/19(木) 22:23:13.87マは底辺・低脳者の職種だから、全然分かってないが当たり前だよ
日本語ができない奴でもOKな職だし
0425デフォルトの名無しさん
2013/12/19(木) 22:24:21.68当人のレベルの低さが伺える
0426デフォルトの名無しさん
2013/12/19(木) 22:29:23.760427デフォルトの名無しさん
2013/12/19(木) 22:34:17.300428デフォルトの名無しさん
2013/12/19(木) 22:51:21.220429デフォルトの名無しさん
2013/12/19(木) 22:52:05.11何それ。emscripten?
サーバー側の話?
0430デフォルトの名無しさん
2013/12/19(木) 22:57:44.76修正されなかった事も知らないの
0431デフォルトの名無しさん
2013/12/20(金) 00:18:14.60コンパイラに金を払ってりゃコンパイラのマニュアル読んでりゃ問題なくね。
gccとかclangとかはそれらが規格に準拠してて欲しいと思う個人や企業が身銭を切る。
ただ、規格に準拠してて欲しいと思う個人や企業ってのが、
規格に興味のない個人や企業が生んだ非互換のゴミに悩まされた被害者だと考えるといろいろとアレだけどな。
0432デフォルトの名無しさん
2013/12/20(金) 00:58:35.02CppCMS, Wt, Tree Frog
0433デフォルトの名無しさん
2013/12/20(金) 08:14:45.07間違いではないんだが、独自の方言が普遍的と勘違い
する人を量産してしまう罪は重い
0434デフォルトの名無しさん
2013/12/20(金) 08:15:40.390435デフォルトの名無しさん
2013/12/20(金) 17:04:18.77文法の説明が無いくせに方言まみれのG++は
どうしようもないUNKOという訳ですね。
規格への準拠を期待して騙され続けているG++ユーザーは不憫です。
0436デフォルトの名無しさん
2013/12/20(金) 17:34:57.300437デフォルトの名無しさん
2013/12/20(金) 19:52:30.450438デフォルトの名無しさん
2013/12/20(金) 19:57:41.24特長は「いつも他人からみて幸せそうには見えず、
愚痴ばかりこぼしている」タイプ
0439デフォルトの名無しさん
2013/12/20(金) 20:01:16.900440デフォルトの名無しさん
2013/12/20(金) 20:11:14.740441デフォルトの名無しさん
2013/12/20(金) 20:20:03.810442デフォルトの名無しさん
2013/12/20(金) 20:28:13.35新 宿 コ ン パ 2 0 1 3
ホ ゲ ホ ゲ 株 式 会 社
0443デフォルトの名無しさん
2013/12/20(金) 20:30:10.12言語の規格とコンパイラーの説明だけでok
0444デフォルトの名無しさん
2013/12/20(金) 20:39:18.090445デフォルトの名無しさん
2013/12/20(金) 20:44:54.330446デフォルトの名無しさん
2013/12/20(金) 20:55:09.71俺「承知しました」
↓
0447デフォルトの名無しさん
2013/12/20(金) 20:57:16.250448デフォルトの名無しさん
2013/12/20(金) 21:09:05.450449デフォルトの名無しさん
2013/12/20(金) 21:42:23.420450デフォルトの名無しさん
2013/12/21(土) 03:32:38.20MSにバグレポート出してるよ
別のチームはOSS向けのパッチ書いたりしてる
0451デフォルトの名無しさん
2013/12/21(土) 05:14:56.16に相当するものと言ったらJavaか?
読んでない
0452デフォルトの名無しさん
2013/12/21(土) 15:06:16.48> 規格に準拠してて欲しいと思う個人や企業
いやいやw
0453デフォルトの名無しさん
2013/12/21(土) 19:38:28.440454デフォルトの名無しさん
2013/12/21(土) 20:06:39.420455デフォルトの名無しさん
2013/12/21(土) 21:46:16.53VSは金払って買ってるから準拠してて欲しいと思うが金は払ったからあとはMSさん宜しくです。
0456デフォルトの名無しさん
2013/12/22(日) 04:35:05.93文法を覚えたばかりで小説を読んだことのない小学生に、
小説を書けって言ってるようなもの
0457デフォルトの名無しさん
2013/12/22(日) 06:02:59.880458デフォルトの名無しさん
2013/12/22(日) 21:10:21.66C++14のドラフト規格を暗記だな
0459デフォルトの名無しさん
2013/12/22(日) 23:26:19.23文法を覚えたばかりで小説を読んだことのない小学生に、
小説を書けって言ってるようなもの
0460デフォルトの名無しさん
2013/12/23(月) 02:23:24.830461デフォルトの名無しさん
2013/12/23(月) 02:38:15.61初心者の学習には不向きです
禿にウザい信者が湧くのにはそれなりの理由がある
0462デフォルトの名無しさん
2013/12/23(月) 11:05:02.180463デフォルトの名無しさん
2013/12/23(月) 11:06:19.830464デフォルトの名無しさん
2013/12/23(月) 13:24:49.710465デフォルトの名無しさん
2013/12/23(月) 13:47:18.660466デフォルトの名無しさん
2013/12/23(月) 13:57:18.250467片山博文MZコスモ ◆T6xkBnTXz7B0
2013/12/23(月) 15:07:27.420468デフォルトの名無しさん
2013/12/23(月) 19:48:58.24例が仕様となっているクソ説明
0469デフォルトの名無しさん
2013/12/23(月) 21:04:22.020470デフォルトの名無しさん
2013/12/24(火) 11:50:05.02それはDR出していい。
0471デフォルトの名無しさん
2014/01/11(土) 16:47:14.7014のジェネリックlambdaが待ち遠しいんですけど、デフォルト引数を与えたりできますか?
fn を例えば2変数のファンクタとして、
[fn](auto x = 8) { return fn(1, x); }; みたいな。
よろしくお願いします。
0472デフォルトの名無しさん
2014/01/11(土) 21:00:03.630473デフォルトの名無しさん
2014/01/11(土) 22:15:52.14じゃあ仕方ないですね。
どうもありがとう。
0474デフォルトの名無しさん
2014/01/12(日) 00:13:06.450475デフォルトの名無しさん
2014/01/12(日) 09:09:35.68[fn](auto x、...) { return fn(1, x 〜
という形で、〜の部分を自分で埋めてくってことですよね。
可変長引数はできるんですか?
0476デフォルトの名無しさん
2014/01/13(月) 02:40:07.760477デフォルトの名無しさん
2014/01/13(月) 02:56:51.060478デフォルトの名無しさん
2014/01/13(月) 03:03:42.61あれって、存在の必要性をまるで感じないんだけど。
個人的には、iosteamくらいいらない子
それより、snprintfがほしい。
0479デフォルトの名無しさん
2014/01/13(月) 03:37:31.52std::stringstreamとかstd::istream_iteratorとか捨てたもんじゃないと思う。
でもprintfは欲しいよなぁ・・・
0480デフォルトの名無しさん
2014/01/13(月) 03:38:29.430481デフォルトの名無しさん
2014/01/13(月) 03:50:31.580482デフォルトの名無しさん
2014/01/13(月) 08:37:43.530483デフォルトの名無しさん
2014/01/13(月) 08:47:01.150484475
2014/01/13(月) 09:56:30.21ラムダにリプレースできるツールの候補があるんで、これ使ってデフォルト引数が実現できるか考えてみます。
0486デフォルトの名無しさん
2014/01/13(月) 18:38:40.24何がしたいのかよくわからないよ。
デフォルト引数がしたいのか、可変長引数がしたいのか、何?
0487デフォルトの名無しさん
2014/01/13(月) 20:32:46.40>>471にある通り
ファンクタ fn に対して
[fn](auto x, auto y = 8) { return fn(1, x, y); }; //yにデフォルト値あり
ということがしたい。
自作のbindモドキをラムダにリプレースできないか検討中。
bind(fn, 1, _1, _2 = 8);
ということをやっているので、ラムダ引数でのautoの使用とデフォルト値が必要になる。
なければ他の手段でできないか、ということです。
0488デフォルトの名無しさん
2014/01/13(月) 20:43:32.480489デフォルトの名無しさん
2014/01/13(月) 22:22:11.62ジェネリックΛ期待。デフォルト引数もok?
↓
それはダメ
↓
他の手段で無い?
↓
C++14ならclang使えば? ←話が理解できないバカ
0490デフォルトの名無しさん
2014/01/13(月) 22:39:48.62それをライブラリで何とかしようとするのがおかしい
boostになければ諦めろって
0491デフォルトの名無しさん
2014/01/13(月) 23:19:26.86まあそうなんですけどね。
今使ってるライブラリのデフォルト引数機能が便利なので、
ラムダで同じことができるようになるならリプレース
そうじゃないなら継続利用(レベルアップ含む)
のどっちに行くべきか見きわめたくなって。
できないっぽいので後者で行くことになるかな。
0492デフォルトの名無しさん
2014/01/14(火) 00:41:24.49んーと、今現在
bind(fn, 1, _1, _2 = 8);
というのを実現してるってこと?
0493デフォルトの名無しさん
2014/01/14(火) 07:01:52.07そうですよ。
関数名とプレースホルダはちょっと変えてるけど。
0494デフォルトの名無しさん
2014/01/14(火) 12:46:18.880495デフォルトの名無しさん
2014/01/14(火) 12:53:56.290496デフォルトの名無しさん
2014/01/14(火) 14:19:40.75多分もっとSTLが最適化出来る
0497デフォルトの名無しさん
2014/01/14(火) 14:27:51.740498デフォルトの名無しさん
2014/01/14(火) 17:28:49.8115年ぐらい前にそんなのあったな
まだ使ってるなんて化石も甚だしい
0499デフォルトの名無しさん
2014/01/14(火) 17:30:57.860500デフォルトの名無しさん
2014/01/14(火) 20:11:25.90C++11ももっとSTLとかラムダ式を柔軟にしないと性能はともかくユーザー層で負ける
0501デフォルトの名無しさん
2014/01/14(火) 21:14:35.66>ユーザー層で負ける
アイドルの人気投票じゃないんだからw
0502デフォルトの名無しさん
2014/01/14(火) 21:19:48.9515年ぐらい前にそんなのあったな
そんなメンテもされていない化石をまだ使ってるなんて
0503デフォルトの名無しさん
2014/01/14(火) 21:39:02.69algorithm系って何にリプレースすればいいの?
0504デフォルトの名無しさん
2014/01/14(火) 22:14:00.90感動した!
実装は簡単ぽいな。
0505デフォルトの名無しさん
2014/01/14(火) 22:56:59.82ちょっと苛めてみた
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' : テンプレート 引数の数が多すぎます
0506デフォルトの名無しさん
2014/01/15(水) 23:33:00.31おいalgorithm系は何にリプレースすればいいんだよ?
0507デフォルトの名無しさん
2014/01/15(水) 23:47:39.55何を言っているんだオマエは。
0508デフォルトの名無しさん
2014/01/15(水) 23:52:16.47何を言ってるんだオマエは。
それともコンテナとイテレータだけだとでも言うつもりか?
0509デフォルトの名無しさん
2014/01/15(水) 23:53:28.46○STL
0510デフォルトの名無しさん
2014/01/15(水) 23:54:28.360511デフォルトの名無しさん
2014/01/15(水) 23:56:39.10STL?
そんなものがISO/IEC 14882:2011のどこに書いてあるのですか?
SGIかステパンと勘違いしてるのでは?
0512デフォルトの名無しさん
2014/01/16(木) 00:01:37.78・コンテナ、イテレーター、アルゴ、ファンクタのみSTL派(string含まず)
・stringもSTL派(iostream含まず)
・テンプレートは全てSTL派
・C++の標準ライブラリは全てSTL派
・なんとなくライブラリは全てSTL派
厳密に正しいのは最初で他は誤り
0513デフォルトの名無しさん
2014/01/16(木) 00:02:19.36だったら「STLなどというものは初めからありません」と言わなきゃつじつまが合わんだろ。
STLという言葉を使った以上、その定義や守備範囲を自分の中に持っているはずだ。
「15年くらい前にあったな」というからには、その当時は存在していたわけだ。
<algorithm>がSTLでなくC++標準ライブラリだというなら、どこかの時点で定義なり認識が変わったわけだろ。
その根拠を出せ。
0514デフォルトの名無しさん
2014/01/16(木) 00:11:43.65差別化のネタにしたいだけなんだから。
0515デフォルトの名無しさん
2014/01/16(木) 00:12:06.32>「15年くらい前にあったな」というからには、その当時は存在していたわけだ。
それがSGIとかステパノフなんだろ。
0516デフォルトの名無しさん
2014/01/16(木) 00:15:38.61>>498,502
0517デフォルトの名無しさん
2014/01/16(木) 00:22:36.04・STLは標準化前の遺物派
が正しいとしても、そのSTLの範囲がなんだったかについては何も語ってないだろ。
だから2番目以降の選択肢の正誤なんてわかりっこない。
どうでもいい争いなんだからヤメトケ。
0518デフォルトの名無しさん
2014/01/16(木) 00:29:19.04このコピペは修正が必要だな。
「STLは標準化前の遺物派(ステパノフのアレ、もしくはSGIのアレ)」
0519デフォルトの名無しさん
2014/01/16(木) 00:42:35.61(ステパノフのアレ、もしくはSGIのアレ)
・コンテナ、イテレーター、アルゴ、ファンクタ
のみSTL派(string含まず)
・stringもSTL派(iostream含まず)
・テンプレートは全てSTL派
・C++の標準ライブラリは全てSTL派
・なんとなくライブラリは全てSTL派
STLという用語の根拠があるのは最初のみで
他はコンセンサスの得られない脳内定義
0520デフォルトの名無しさん
2014/01/16(木) 00:46:05.600521デフォルトの名無しさん
2014/01/16(木) 00:48:39.38なるほど用語に根拠があるのですね。
で、その内容が「STLは標準化前の遺物派」ということだと。
0522デフォルトの名無しさん
2014/01/16(木) 00:58:28.030523デフォルトの名無しさん
2014/01/16(木) 01:40:28.01503,506「(俗称としての)STLを置換するライブラリってなんだよ」
507「(標準化される前の)STLじゃなくて(標準化された)C++標準ライブラリを使えってことだろ」
508「(俗称としての)(コンテナ以外も含む)STLは現役のライブラリだろ」
おまえらわざとやってるだろ。
0524デフォルトの名無しさん
2014/01/16(木) 01:43:23.08「C言語」は只の俗称・通称の類に過ぎないってネタとそっくりだ
0525デフォルトの名無しさん
2014/01/16(木) 01:48:12.39「OSって何ですか?IBMが何故関係?」
昔STLは確かに存在したのだから
0526デフォルトの名無しさん
2014/01/16(木) 01:51:37.220527デフォルトの名無しさん
2014/01/16(木) 02:21:52.84B:今時写メとは化石ですか?
A:じゃあ写メに変わる物は?
B:普通にスマホで写真撮って送れ
B:写メは2001年にJフォンが〜
A:だったら写メなどというものはありませんと言え
当時は存在していたわけだ
B:だからそれがJフォンの
0528デフォルトの名無しさん
2014/01/16(木) 03:13:33.92> 当時は存在していたわけだ
化石って認めてる発言だよねコレ。
0529デフォルトの名無しさん
2014/01/16(木) 03:17:55.190530デフォルトの名無しさん
2014/01/16(木) 07:56:19.19「化石のSTLは標準ライブラリのコンテナの基礎となった」
が正しい。
標準ライブラリには「ここはSTL」という説明はなく
また化石STLと標準ライブラリの類似部分とは完全に一致でもない
0531デフォルトの名無しさん
2014/01/16(木) 08:06:53.37それが名付けられるまでSTLを使って構わない
0532デフォルトの名無しさん
2014/01/16(木) 11:32:52.17横からサンクス、やっと話題を理解できた
0533デフォルトの名無しさん
2014/01/16(木) 12:17:18.60名付けられるまでは<pthread.h>のcond_timedwaitも
<thread.h>のcnd_timedwaitのどちらも
POSIXと呼んで構わない
キチガイの発想ではこうなるんだろうな
0534デフォルトの名無しさん
2014/01/16(木) 12:29:03.79言語数多いけど頑張ってね。
0535デフォルトの名無しさん
2014/01/16(木) 12:33:23.00「標準ライブラリーにはSTLという言葉がない」
「じゃあWikipedia直せよ」
「オマエが直せ」
予想される展開2
「標準ライブラリーにはSTLという言葉がない」
「じゃあWikipedia直せよ」
「オマエが規格を直すのが筋」
0536デフォルトの名無しさん
2014/01/16(木) 12:41:35.63「標準ライブラリーにはSTLという言葉がない」
「(531)なので規格のもSTL」←??
0537デフォルトの名無しさん
2014/01/16(木) 19:46:11.590538デフォルトの名無しさん
2014/01/16(木) 20:20:44.660539デフォルトの名無しさん
2014/01/16(木) 20:22:52.480540デフォルトの名無しさん
2014/01/16(木) 20:25:41.200541デフォルトの名無しさん
2014/01/21(火) 10:26:14.02委員会ドラフトが出てから久しいのだけれど
0542デフォルトの名無しさん
2014/01/22(水) 20:37:10.340543デフォルトの名無しさん
2014/01/28(火) 06:36:28.840544デフォルトの名無しさん
2014/01/28(火) 07:11:36.740545デフォルトの名無しさん
2014/01/28(火) 07:46:34.110546デフォルトの名無しさん
2014/01/28(火) 10:54:47.70ジェネリックラムダは簡単に入りそうだけど
というかClangでは使える
0547デフォルトの名無しさん
2014/01/28(火) 11:53:08.19メンバー関数ごとに要件が違うんだから
メンバー関数内にstatic_assert(is_xxw::value)
をたくさん書いてくれりゃいいわ。
0548デフォルトの名無しさん
2014/01/28(火) 14:48:34.090549デフォルトの名無しさん
2014/01/28(火) 20:36:23.160550デフォルトの名無しさん
2014/01/29(水) 00:01:14.41http://codezine.jp/article/detail/7571?p=3
0551デフォルトの名無しさん
2014/01/29(水) 00:09:09.690552デフォルトの名無しさん
2014/01/29(水) 00:11:25.640553デフォルトの名無しさん
2014/01/29(水) 00:19:27.99出荷時に処理が終わっている製品とか、夢が広がリングww
0554デフォルトの名無しさん
2014/01/29(水) 00:35:24.21コンパイル後にシーンやモデルの入力替えることが出来ないのであれば、プロダクトとしての価値がよくわかりません
解像度上げたら十分時間かかってるようだし
0555デフォルトの名無しさん
2014/01/29(水) 00:45:19.98さすがにレイトレ完了までやってしまうのはネタだけど、
部分的にでも出来れば全体として高速化が出来る部分が増えるってことだ。
0556デフォルトの名無しさん
2014/01/29(水) 00:49:50.51あるいは、ビットマスクのようなものとか
0557デフォルトの名無しさん
2014/01/29(水) 00:58:42.44その理解でいい
特に価値は無い
PostScriptでレイトレと似たようなもんだな
「プリンタがレイトレしてやがるwwwおせぇwww」
「コンパイラがレイトレしてやがるwwwwおせぇwww」
「Webブラウザが仮想PCホストしてやがるwwwwおせぇwww」
あるいはメガデモ的な面白さ
0558デフォルトの名無しさん
2014/01/29(水) 03:05:47.24やっぱりswap演算子はボツか
0559デフォルトの名無しさん
2014/01/29(水) 06:24:26.170560デフォルトの名無しさん
2014/01/29(水) 21:51:33.290561デフォルトの名無しさん
2014/01/29(水) 23:22:02.65本はよ
0562デフォルトの名無しさん
2014/01/30(木) 00:58:06.43解説どもです、スッキリしました
変態的で興味が募ったのでちょいぐぐって情報の海に溺れてきます
0563デフォルトの名無しさん
2014/02/14(金) 05:45:58.14int a[1];
func( bool ); func( a ); // たまに起こるミス、型チェックを通ってしまう
たとえば
func( explicit bool ); ←こんなキーワード
func( true / false / bool(a) ); // OK
func( a ); // 暗黙の変換はエラー
0564デフォルトの名無しさん
2014/02/14(金) 06:27:40.45こういうのはtemplateが役に立つ
http://ideone.com/eFtKnq
0565デフォルトの名無しさん
2014/02/14(金) 06:34:30.65それをfuncの引数にすると二重の暗黙変換はできないからfunc(explicit_bool_type);に直接intを渡せなくなる。
0566デフォルトの名無しさん
2014/02/14(金) 06:36:30.970567デフォルトの名無しさん
2014/02/14(金) 06:41:43.770568563
2014/02/14(金) 08:31:22.51ありがとうございます
暗黙の変換が行われる前にテンプレート関数で引き受けて=delete宣言するのですね
目から鱗が落ちました
0569デフォルトの名無しさん
2014/02/14(金) 08:39:30.06T で受け取って戻り値 std::enable_if<std ::is_same<T,bool>::value>::type
SFINAE サイコー
0570デフォルトの名無しさん
2014/02/14(金) 13:52:59.310571デフォルトの名無しさん
2014/02/14(金) 14:11:25.48とりあえずおめ。
0572デフォルトの名無しさん
2014/02/14(金) 21:15:51.96Tで受け取って、なら大丈夫だけど一般にはT&&とすることも多いから is_same は要注意だよな。
0573デフォルトの名無しさん
2014/02/14(金) 21:33:33.45そそ
なんかうまく呼ばれねーとなって remove_cv とかゴテゴテと追加
0574デフォルトの名無しさん
2014/02/14(金) 21:38:06.90template<typename T>
struct remove_ref_cv {
typedef typename std::remove_reference<typename std::remove_cv<T>::type>::type type;
};
0575393
2014/02/15(土) 04:06:39.490576デフォルトの名無しさん
2014/02/16(日) 05:06:04.15オナニー化はダメな流れだわ
0577デフォルトの名無しさん
2014/02/16(日) 07:14:28.550578デフォルトの名無しさん
2014/02/16(日) 13:07:36.64言語「機能」っていってるじゃん
0579デフォルトの名無しさん
2014/02/16(日) 13:40:57.630580デフォルトの名無しさん
2014/02/16(日) 16:56:16.420581デフォルトの名無しさん
2014/02/16(日) 18:42:32.620582デフォルトの名無しさん
2014/02/16(日) 19:40:01.060583デフォルトの名無しさん
2014/02/16(日) 19:43:32.330584デフォルトの名無しさん
2014/02/16(日) 20:36:52.85童貞度というか HDL はry
0585デフォルトの名無しさん
2014/02/16(日) 21:09:46.620586デフォルトの名無しさん
2014/02/16(日) 21:13:25.43プロパティとかテンプレートとか
0587デフォルトの名無しさん
2014/02/16(日) 21:51:56.13お前が作って公開すればいいんじゃね?
0588デフォルトの名無しさん
2014/02/16(日) 23:30:49.27でもランタイムで逃げてる言語ほどラクにはならんよなあ
ふと今c++にオプション的なランタイムと糖衣構文追加のような形で、LLっぽい共存とかできないのかなと着想したんだけど、Obj-Cがまさしくそれだと気付いて絶望した
javaより古いルーツの言語にいちゃもんつけるのもあれだが、あの言語もうちょっと記法レベルでなんとかならんもんなのかな
Obj-Cは動的言語面の実装自体はいい線行ってるから、c++のパフォーマンスを有効活用できるプリプロセッサなんか面白いかもな
Obj-C++ with Lightweight
ここまで没
0589デフォルトの名無しさん
2014/02/16(日) 23:35:13.760590デフォルトの名無しさん
2014/02/16(日) 23:36:54.800591デフォルトの名無しさん
2014/02/17(月) 00:58:30.07一から再構築したらうまく行くもんかねぇ?
0592デフォルトの名無しさん
2014/02/17(月) 01:12:08.240593デフォルトの名無しさん
2014/02/17(月) 01:13:19.95低水準から高水準までカバーしつつマルチパラダイムをサポートするという時点で
そもそも言語に与えられた問題領域が複雑すぎる部分はあると思う
0594デフォルトの名無しさん
2014/02/17(月) 08:03:03.390595デフォルトの名無しさん
2014/02/17(月) 08:03:45.480596デフォルトの名無しさん
2014/02/17(月) 08:49:21.690597デフォルトの名無しさん
2014/02/17(月) 09:03:56.850598デフォルトの名無しさん
2014/02/17(月) 14:16:06.87テンプレートとかどう?
0599デフォルトの名無しさん
2014/02/17(月) 14:19:29.25クラス増やすたびにいちいちヘッダファイルを書くとか言う間抜けなことを強いられたり
テンプレートでミスるとわけのわからないコンパイラエラーにおそわれたり
っていうのは改善されたの?
0600デフォルトの名無しさん
2014/02/17(月) 14:29:00.81他の言語でもかわらなくね
>テンプレートでミスるとわけのわからないコンパイラエラーにおそわれたり
コンセプトさんが何とかしてくれる
コンパイル遅いのは我慢しろ
0601デフォルトの名無しさん
2014/02/17(月) 17:20:08.30> クラス増やすたびにいちいちヘッダファイルを書くとか言う間抜けなことを強いられたり
それはそういうルールでコード書くことを選択したプログラマの責任だろ。
他から参照しないならヘッダファイルなんぞいらんし、なんならヘッダに全部書いてろよ。
0602デフォルトの名無しさん
2014/02/17(月) 17:50:41.130603デフォルトの名無しさん
2014/02/17(月) 18:28:57.40> コンセプトさんが何とかしてくれる
それ10年以上言い続けてるんだけど・・・
0604デフォルトの名無しさん
2014/02/17(月) 18:31:17.01何かを間抜けって貶すなら自分が貶される覚悟もしておこうよ・・・・
0605デフォルトの名無しさん
2014/02/17(月) 21:28:09.39そういえば、いつも.hと.cppのファイルごとコピーしてプログラム書くから
後になってcppの中身カラじゃねーか(最初からいらなかった)と気がついたりすることあるな。
ほかにもクラスをテンプレートに変えて、面倒だから全部ヘッダーに書いてcppいらなくなったとか
でもプロジェクトに追加してるからほったらかしで意味ないcppが何個も
0606デフォルトの名無しさん
2014/02/17(月) 21:34:39.70凄く便利だけど?
0607デフォルトの名無しさん
2014/02/17(月) 21:40:16.670608デフォルトの名無しさん
2014/02/17(月) 21:45:02.430609デフォルトの名無しさん
2014/02/17(月) 21:46:39.42makeheaders とかでいいんじゃないの。
0610デフォルトの名無しさん
2014/02/17(月) 21:49:09.20学生の頃、いつもc++のヘッダーファイルを手で書いてたよ
0611デフォルトの名無しさん
2014/02/17(月) 21:59:25.26マクロ使ってちょっとソースで変わったことすると、すぐ汚い結果吐くんだよね。
言語レベルでヘッダ/ドキュメント生成のためのルールを規定すれば、
Clangとかが綺麗なのを吐いてくれるようになると思うんだが。
0612デフォルトの名無しさん
2014/02/17(月) 22:35:09.02その着想で腰を上げたとして、委員会が完璧な仕様を決めるまで十何年かかるかが問題だなw
生成系ツールや俺俺ルールでお茶濁すくらいが現実解だと思う
0613デフォルトの名無しさん
2014/02/17(月) 22:43:49.78足を撃つ、ってどんなレベルのことを言ってるのかで答えは変わる。
0614デフォルトの名無しさん
2014/02/17(月) 22:44:59.29constexpr より強い、comptexpr (compile time expr) が欲しい。
0615デフォルトの名無しさん
2014/02/19(水) 22:14:17.07仕様に由来しないところで幾らでも足を吹っ飛ばせるから考えるだけ無駄
・・・とか言い出すと言語に寄らずバグらせ放題ってことになるけどな
0616デフォルトの名無しさん
2014/02/20(木) 11:45:50.04C++はミドルウェアより下のレイヤーで使う言語だから、
分かる人だけ使えばいいんじゃないかな。
エリートさんたちがプログラミングする世界だから。
0617デフォルトの名無しさん
2014/02/20(木) 11:52:47.95そのポジションはCじゃね?
0618デフォルトの名無しさん
2014/02/20(木) 12:03:10.74http://ja.m.wikibooks.org/wiki/More_C%2B%2B_Idioms
言語仕様は↑これを完璧に理解出来る程度に分かっていれば良い
0619デフォルトの名無しさん
2014/02/20(木) 12:04:24.13Cが主戦力であることは否定しないけど、
iOSはデバドラにサブセットC++
WebKITもC++
gccもC++
と増えてきてる。
0620デフォルトの名無しさん
2014/02/20(木) 12:19:46.280621デフォルトの名無しさん
2014/02/20(木) 14:30:13.500622デフォルトの名無しさん
2014/02/20(木) 14:38:29.56○保証
0623デフォルトの名無しさん
2014/02/20(木) 17:58:43.050624デフォルトの名無しさん
2014/03/05(水) 19:02:16.040625デフォルトの名無しさん
2014/03/05(水) 19:43:55.900626デフォルトの名無しさん
2014/03/06(木) 01:45:01.20#include <regex>
std::regex re("\\[(an|pan|man)\\]");
VC++では動いてたんだが
[ってどうやってエスケープするんだ?
0627デフォルトの名無しさん
2014/03/06(木) 02:13:16.87つ Google
0628デフォルトの名無しさん
2014/03/06(木) 03:15:02.53U+005C(REVERSE SOLIDUS)じゃなくてU+00A5(YEN SIGN)に変換してしまったってことはないか?
まぁ最悪\xhhとかで代用すればいい
0629デフォルトの名無しさん
2014/03/06(木) 04:43:28.41エラーメッセージは本当にエスケープできないって出るの?
gcc4.8.1は<regex>の実装がまだ不十分な段階にあるんだが。
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53631
0630デフォルトの名無しさん
2014/03/06(木) 18:35:52.72VCで動くなら使っているGCCのバグか>>629だろ
GCCなんて使わないでClang使ったほうが良いんじゃないか
0631デフォルトの名無しさん
2014/03/06(木) 19:16:53.760632デフォルトの名無しさん
2014/03/06(木) 19:30:39.210633626
2014/03/07(金) 00:10:48.35http://stackoverflow.com/questions/15059162/c11-regex-matching
見つけたわダメみたいだね
>>628
std::regex re("\\[");
std::regex re("\[");
std::regex re("\0x5c[");
std::regex re("\\0x5b");
全部ダメだった
>>629
/usr/include/c++/bits/regex_compiler.h:467:50
__throw_regex_error(regex_constants::error_escape);
ここで死んでしまう
>>629
実装されていないんだな
>>630
テストコードでは動いたー!
インラインアセンブラとかgcc依存プリプロセッサ
使いまくってるメインプロジェクトですんなり使えるだろうか
>>632
std::regex re( R"(\[)");
std::regex re( "\\Q[\\E");
これもだめだった
とりあえずclangに移行進めます、C++11はスレチだったみたいでスマソ
0634デフォルトの名無しさん
2014/03/07(金) 00:18:47.68あ、うんうん
0635デフォルトの名無しさん
2014/03/07(金) 00:59:17.51stackoverflowのレスみると
C++ standard library(GCC用?)がなんか駄目なんだな。
Clangでこれ使っているならClangでも駄目。で、Boost regex使えか
0636デフォルトの名無しさん
2014/03/07(金) 08:40:30.610637デフォルトの名無しさん
2014/03/07(金) 09:38:35.430638デフォルトの名無しさん
2014/03/07(金) 19:48:53.99Regular expression support in libstdc++-v3 is now available.
だから、GCCは超最近のものでないと動かんのだな
0639デフォルトの名無しさん
2014/03/09(日) 01:36:43.59というか、エラーになるということはもしかして、std系って、POSIX関数のラッパーじゃなくてものによっては独自実装しているってことなのか。
知らんかった。
0640デフォルトの名無しさん
2014/03/09(日) 02:06:43.17std::regex は ECMAScript の正規表現対応だからまず間違いなく独自実装だが。
0641デフォルトの名無しさん
2014/03/09(日) 02:33:58.47バギーな動作するよりは既定でgrepになってた方がまだマシ。
0642デフォルトの名無しさん
2014/03/10(月) 17:05:49.31それともGNU grepとかBSD grepのことか?
0643デフォルトの名無しさん
2014/03/10(月) 21:38:10.28わざわざ実装するとかどうしてそんなことになったんだろ。
キャプチャの問題?
0644デフォルトの名無しさん
2014/03/10(月) 21:57:51.800645デフォルトの名無しさん
2014/03/11(火) 05:23:11.470646デフォルトの名無しさん
2014/03/11(火) 23:39:44.52ID:fXwBZvGtコンパイル時に決定できないとき教えてくれるからバグを防げる
0647デフォルトの名無しさん
2014/03/12(水) 05:31:43.20ID:zulvYP1Lなるほど
0648デフォルトの名無しさん
2014/03/13(木) 19:03:46.54ID:81wfXhZd0649デフォルトの名無しさん
2014/03/13(木) 19:14:49.29ID:+lIKaSU4ならないよ。そのスコープに入るときに計算されるだけ。
0650デフォルトの名無しさん
2014/03/13(木) 19:32:07.93ID:nfV6YhIZconstだと const int x = rand(); みたいなことが普通に出来る。constexprでは不可。
0651デフォルトの名無しさん
2014/03/13(木) 19:41:03.39ID:nfV6YhIZ0652デフォルトの名無しさん
2014/03/13(木) 19:47:59.08ID:81wfXhZdああ、そうだ
const を使った時にエラーになるだけだった
(コンパイル時定数でないといけない所に使うと)
0653デフォルトの名無しさん
2014/03/13(木) 21:31:28.19ID:gZyvGjeHコンパイルのたびに変わられてもなあw
デバッグ担当者に恨みがあるときに有用か
0654デフォルトの名無しさん
2014/03/14(金) 00:55:48.19ID:8ZkUtZ7Aよく覚えておこう
0655デフォルトの名無しさん
2014/03/18(火) 21:52:05.87ID:UBk2tVSEドワンゴの会長が江添に、C++プログラマを招く方法を相談したところ、
「まず自分のような優秀でない者を優遇してください。
そうすれば、もっと優れたC++プログラマが次々に集まってくるだろう」と言ったという故事から。
0656デフォルトの名無しさん
2014/03/19(水) 03:12:08.03ID:eiPnsEPV面接やめりゃいいんじゃないの
あれは萎える
0657デフォルトの名無しさん
2014/03/19(水) 03:16:23.59ID:vxKEh5eUあーここ文法エラーですねーご縁なかったですねー
みたいなことでもやってんのかい
0658デフォルトの名無しさん
2014/03/19(水) 09:19:45.88ID:zT3d0OOi何かと思ったら江添氏ドワンゴニ就職してたんだな。そりゃ妬ましいですなあ。
0659デフォルトの名無しさん
2014/03/19(水) 09:54:25.98ID:bZgbKUm9大抵655みたいな下らない奴なんだけど
0660デフォルトの名無しさん
2014/03/19(水) 13:52:16.85ID:jfFivXOk0661デフォルトの名無しさん
2014/03/19(水) 14:05:41.36ID:CB1HUIXp0662デフォルトの名無しさん
2014/03/19(水) 21:11:44.61ID:aDPhdWIk0663デフォルトの名無しさん
2014/03/19(水) 21:16:13.44ID:5IXC0HIP0664デフォルトの名無しさん
2014/03/20(木) 00:18:22.53ID:1Y22wDADうちはまだダメだ。boostもダメ。
0665デフォルトの名無しさん
2014/03/20(木) 22:13:56.93ID:/M0F5d5s実案件はまだでしょ、自分で使うツールとかで実験的に使い始めたところ
範囲ベースの for とかめちゃ便利だわ
0666デフォルトの名無しさん
2014/03/20(木) 22:58:12.94ID:N5eLnApK0667デフォルトの名無しさん
2014/03/21(金) 01:32:54.13ID:OkOuwegv先んじて、月単位の独自研究の成果を各自持ち寄った結果でもあるので仕事場の空気レベルで特殊な例だと思うが
0668デフォルトの名無しさん
2014/03/21(金) 01:37:21.03ID:7xig81Eo2011年開始の案件以降、環境がVC2010になったからVCの機能の範囲で使いまくってる。
もうautoなしなんて考えられん。
0669デフォルトの名無しさん
2014/03/21(金) 02:57:02.70ID:FGAg6ToCboostも使える
range based forとauto無しでは生きられん
0670デフォルトの名無しさん
2014/03/21(金) 07:26:47.86ID:21MtAdc/> range based forとauto無しでは生きられん
range based for って、cbegin( ) 呼んでくれないんだけど、そう言うケースはどうしてる?
うちでは、その部分は従来の書き方してる。
すごくいい機能だけど、それだけにちょっとガッカリ感がハンパない。
0671デフォルトの名無しさん
2014/03/21(金) 07:27:35.49ID:sDay5++M0672デフォルトの名無しさん
2014/03/21(金) 08:38:07.12ID:FGAg6ToCfor_each使うかconst auto&だなー
0673デフォルトの名無しさん
2014/03/21(金) 08:54:32.73ID:VBQzVRnqconst T& const_wrap(const T& v) { return v; }
for(auto &i : const_wrap(v))
要するにconstへキャストしとけばいいんだろ?
0674デフォルトの名無しさん
2014/03/21(金) 10:11:54.32ID:876LI0nhcbegin( ) 使ってくれる?
VS 2013 だとダメだったんだが
>>672
for_each ならいけるの?
いま出先だから、あとでちょっと試してみる
>>673
今んところこれが定番みたいなんだけど、無理矢理感ハンパない
for_each(const auto& i : const v) みたいな構文で使えればいいんだけどね
0675デフォルトの名無しさん
2014/03/21(金) 11:30:52.58ID:7xig81Eocbegin()を使ってくれなくてもiがconstになっていれば文句ないけどね。
0676デフォルトの名無しさん
2014/03/21(金) 12:14:37.18ID:21MtAdc/v がメンバーだと const なメンバー関数で begin( ) 使うと怒られるんよ
て言うか、そのための cbegin( ) なんだが...
0677デフォルトの名無しさん
2014/03/21(金) 12:54:02.21ID:VQJvHtSfあなたの使ってるコンパイラのライブラリのコンテナ群はconst付いてるbegin endが定義されてないの?
0678デフォルトの名無しさん
2014/03/21(金) 13:11:49.86ID:7xig81Eoそういうときはconst付きのオーバーロードが自動的に選ばれるんじゃないの・・・
って、>>677に先に言われたか。
0679デフォルトの名無しさん
2014/03/21(金) 16:20:44.86ID:IxwabTo/ん、ここc++14/c++1yスレですよね?
0680デフォルトの名無しさん
2014/03/21(金) 16:32:21.97ID:7xig81Eoconst付きのbegin(),end()はC++11でも削除されてないし、C++14で削除される予定もないよ。
0681デフォルトの名無しさん
2014/03/21(金) 16:38:34.04ID:pRTSEoEQ0682デフォルトの名無しさん
2014/03/21(金) 16:51:30.57ID:B1xV2tLh0683デフォルトの名無しさん
2014/03/21(金) 17:01:19.62ID:VQJvHtSf0684デフォルトの名無しさん
2014/03/21(金) 17:43:07.83ID:aQAHkMot0685デフォルトの名無しさん
2014/03/21(金) 18:01:34.42ID:xvdwrk0Xえ゛っ、const 付きの begin( ) にしとけば使ってくれるんか?
マジで知らんかったわ。
VS 2013 で使えるか、やってみよ。
0686デフォルトの名無しさん
2014/03/21(金) 18:38:14.12ID:lD60fRJj↑
方言かい。関西弁としてもけったいな言い方だな。
0687デフォルトの名無しさん
2014/03/21(金) 18:39:36.89ID:nNEE3Utq0688デフォルトの名無しさん
2014/03/21(金) 19:01:21.39ID:bqevYXZK頭悪そうな文体ではあるけど
0689デフォルトの名無しさん
2014/03/21(金) 20:41:01.65ID:PuCTRIi5だって土民は自分が使っている言葉が標準語
そして、それ以外すべてど方言なんですよ
0690デフォルトの名無しさん
2014/03/21(金) 20:52:49.08ID:21MtAdc/> 方言かい。関西弁としてもけったいな言い方だな。
気色悪い関西弁やめてんか
0691デフォルトの名無しさん
2014/03/21(金) 20:56:25.66ID:lD60fRJjあのな、主語が何なのか聞いてるんだけど。それとも「使えるんか?」
を「使ってくれるんか?」と言うのかい。
まあ、言葉の使い方おかしいんじゃないかと言ってるのに
おい、>>689。お前は自分では何にも言えないくせに、後ろ
からキャンキャン吠えている女みてえな糞野郎だ。
0692デフォルトの名無しさん
2014/03/21(金) 21:14:19.42ID:PuCTRIi5それがそいつの標準語だよ。基地土民のね
0693デフォルトの名無しさん
2014/03/21(金) 21:15:25.97ID:lD60fRJj0694デフォルトの名無しさん
2014/03/21(金) 21:18:56.71ID:PuCTRIi5>方言かい。関西弁としてもけったいな言い方だな。
で、主語が何なのか聞いていたのか? 土民じゃないと土民標準語理解できないからな
0695デフォルトの名無しさん
2014/03/21(金) 21:19:33.78ID:lD60fRJj0696デフォルトの名無しさん
2014/03/21(金) 21:40:53.28ID:o/AML2E/この流れの所為で
> const 付きの begin( ) にしとけば
がツッコまれていない件について
begin()にconstつけないだろ
0697デフォルトの名無しさん
2014/03/21(金) 21:51:39.48ID:sDay5++Mついてるけど何が言いたいんだ
0698デフォルトの名無しさん
2014/03/21(金) 21:59:08.90ID:o/AML2E/いや使うときに
0699デフォルトの名無しさん
2014/03/21(金) 22:28:38.75ID:21MtAdc/意味わからん
どっから使う時なんて発想が出てきたんだ?
0700デフォルトの名無しさん
2014/03/21(金) 22:36:41.76ID:yZ2dHoTgbeginは両方多重定義しておけばいいじゃん。使うときは
インスタンスがconst付きかどうかで自動的に選択されるじゃん。
0701デフォルトの名無しさん
2014/03/21(金) 22:48:25.31ID:i1lS1iqdイミフ
0702デフォルトの名無しさん
2014/03/21(金) 23:15:08.50ID:PuCTRIi50703デフォルトの名無しさん
2014/03/22(土) 11:59:46.75ID:w77uEg4Kそれはそうだけど>>674をエスパーすると
c++11で追加された型推論ではautoにconst付けないと
constのbeginが呼ばれないって話でしょ
完全にautoを無視した話してたからいつの時代の話してるんだと思っただけ
0704デフォルトの名無しさん
2014/03/22(土) 12:22:44.80ID:ZdExmIEg0705デフォルトの名無しさん
2014/03/22(土) 12:59:52.50ID:ZPzngx0Kそう考えてたやつもいるんだな
0706デフォルトの名無しさん
2014/03/22(土) 16:29:25.17ID:eq/IxRl7>constのbeginが呼ばれない
まるで、constを付けるとauto begin()const->const_iterator
が呼ばれるかのような発言だな。
0707デフォルトの名無しさん
2014/03/22(土) 16:39:36.81ID:HJ0+n2Jk上の方でそれで済まないとか書いてあるからさ。
0708デフォルトの名無しさん
2014/03/22(土) 16:41:53.88ID:j1DZjBUB0709デフォルトの名無しさん
2014/03/22(土) 18:44:56.14ID:7xC9kwdcデリファレンスにコストのかかる処理があるときは問題となる
0710デフォルトの名無しさん
2014/03/22(土) 19:32:15.59ID:ZdExmIEg0711710
2014/03/22(土) 19:32:49.47ID:ZdExmIEg0712デフォルトの名無しさん
2014/03/22(土) 19:49:09.81ID:HJ0+n2Jkただあんまりそんな実装しないよね。
パッと思いつくのrwlockでconst付きはrlock、const無しはwlock するようなコンテナとか?
でもconst有りと無しで問題になる程パフォーマンス変わるようなコンテナは逆に使いづらいと思うのよね。
0713デフォルトの名無しさん
2014/03/22(土) 22:37:22.96ID:j1DZjBUBそういう問題の解決をcbeginに求めようとしているのだな?
不適切なやり方なのかもしれないし、そうでないかもしれない。
0714デフォルトの名無しさん
2014/03/23(日) 06:39:41.19ID:Ci/6MbS/constと非constの違いの話だと思うのだけれど
どうしてcbeginとbeginの違いの話だと妄想したがるのか
0715デフォルトの名無しさん
2014/03/23(日) 10:39:09.00ID:buFfa6rWそもそもは>>670から始まってるから
0716デフォルトの名無しさん
2014/03/23(日) 10:56:12.39ID:J+Rs1swr0717デフォルトの名無しさん
2014/03/23(日) 11:36:21.59ID:sV6DQ8Cbauto operator + (T1 x, T2 y) -> decltype(x+y)
{
return x+y;
}
上のところで、
error: template instantiation depth exceeds maximum of 900・・・
recursively required by substitution of 'template<class T1, class T2> decltype ((x + y)) operator+(T1, T2) [with T1 = std::complex<double>; T2 = double]
みたいなエラーがでます(gcc4.8.1)。これって、decltype(x+y)のところで、operator+が再帰的に呼ばれているということですか?
0718片山博文MZジェバンニ ◆T6xkBnTXz7B0
2014/03/23(日) 11:39:47.07ID:FjLlR1KUそれってそもそも必要なの?
0719デフォルトの名無しさん
2014/03/23(日) 11:46:12.34ID:sV6DQ8Cb0720デフォルトの名無しさん
2014/03/23(日) 12:06:50.29ID:E9zZ+v+U0721デフォルトの名無しさん
2014/03/23(日) 13:34:05.08ID:+klle/r1演算子+(T1 x,T2 y)の返値の型と定義しているようなものなのでは
0722デフォルトの名無しさん
2014/03/23(日) 13:55:55.41ID:wql3g0E+0723デフォルトの名無しさん
2014/03/23(日) 15:32:38.95ID:9EUDVluQ0724デフォルトの名無しさん
2014/03/23(日) 16:37:18.36ID:FjLlR1KU0725デフォルトの名無しさん
2014/03/23(日) 16:42:36.55ID:wDKVi9AQコンパイル時に見つかるだけいいんじゃね
template <class T1, class T2>
auto operator + (T1 x, T2 y) -> decltype(auto)
{
return y ? (++x)+(--y) : x;
}
0726デフォルトの名無しさん
2014/03/23(日) 21:55:13.61ID:sV6DQ8Cb...
complex<double> z(0,1);
cout<<1+z<<endl;
をコンパイルすると「複素数と整数の演算+は定義されていない」旨のエラーがでます。ところが
template <class T>
struct double_trait {
typedef T type;
};
template <class T>
using Dtype=typename double_trait<T>::type;
template <class T>
std::complex<T> operator + (Dtype<T> c, const std::complex<T>& z)
{
return c+z;
}
をmain()関数の前に定義すると、今度はビルド実行できます。わからないのはintの場合の特殊化
をしてないのになぜビルド実行できるかです。
※complex<double>とintの単純な演算子オーバーロードを使わなかったのは
オペランドがchar, unsignedなどの場合にも対応させるためです。それと
int iとcomplex<double> zに対して単純にreturn i+z;とするとなぜか実行時
エラーが出ます(TDM gcc4.8.1)。
0727デフォルトの名無しさん
2014/03/23(日) 22:06:19.15ID:sV6DQ8Cb0728デフォルトの名無しさん
2014/03/23(日) 22:56:26.24ID:sV6DQ8Cbtemplate <class T>
std::complex<T> operator + (Dtype<T> c, const std::complex<T>& z)
は実体化される時に
std::complex<double> operator + (double c, const std::complex<double>& z)
となり、intやchar型の実パラメータが渡されるときに暗黙の型変換が適用されるのか?
template <class T>
std::complex<T> operator + (T c, const std::complex<T>& z)
でもokでした。traitsは関係なしと。お騒がせしました。
今日はもう寝ます。
0729デフォルトの名無しさん
2014/03/23(日) 23:05:46.93ID:sV6DQ8Cbなっちまった。寝る。
0730デフォルトの名無しさん
2014/03/23(日) 23:17:30.67ID:k+FbO2rGお疲れ様。
俺も寝よう。おやすみ。
0731デフォルトの名無しさん
2014/03/23(日) 23:27:25.54ID:oWIQ1yda0732デフォルトの名無しさん
2014/03/23(日) 23:50:33.19ID:8OD1stAu0733デフォルトの名無しさん
2014/03/23(日) 23:53:52.09ID:Cwtmew+70734デフォルトの名無しさん
2014/03/24(月) 02:55:24.26ID:zheSyNc80735デフォルトの名無しさん
2014/03/24(月) 22:27:29.45ID:uHELE/QG#include "stdafx.h"
template <class T>
struct double_trait {
typedef T type;
};
template <class T>
using dtype=typename double_trait<T>::type;
template <class T>
std::complex<T> operator + (dtype<T> c, const std::complex<T>& z) //�@
{
return c+z;
}
int main()
{
using namespace std;
complex<double> z(0,1);
char c=-1;
cout<<c+z<<endl;
cin.get();
return 0;
}
0736デフォルトの名無しさん
2014/03/24(月) 22:46:48.96ID:uHELE/QG#include <iostream>
#include <complex>
>>735の�@の引数を直接double cにすると、「多重定義であいまい(ambiguous)」のエラーが出て
しまいます。floatにするとコンパイルエラーは出ませんが、無限再帰に陥るのか実行時エラー
が出ます。dtype<T> c の場合は、T=doubleなので実質dtype<T>=doubleとなるのになのに、
コンパイラはエラーを出さません。また、正常に実行されます。どうも、コンパイラを欺く
トリックではないかと。
※ 1.0+zと書けばすむ話ですが、数学の教科書では普通にz+1とか、1+zとか書きますよね。
しかし、プログラムでうっかりz+1と書いてしまうと、分けのわからないエラーがベラベラと
出てきて初心者はとまどいます。それで、>>735 みたいな手の込んだことをするわけです。
でも、複素数と整数の混合演算を簡単にできる方法ないですかね。
0737デフォルトの名無しさん
2014/03/24(月) 22:48:12.05ID:uHELE/QG↓
T=doubleなので実質dtype<T>=doubleとなるのに、コンパイラはエラーを出しません。
0738デフォルトの名無しさん
2014/03/24(月) 22:52:52.12ID:JglQ1MVOおまえ御命令だ。やれよ
0739デフォルトの名無しさん
2014/03/24(月) 23:30:50.09ID:f/NUMeagでもひとついっとくとすでに標準に
template<class T> complex<T> operator+(const complex<T>&, const T&);
template<class T> complex<T> operator+(const T&, const complex<T>&);
はあるから
> >>735の�@の引数を直接double cにすると、「多重定義であいまい(ambiguous)」のエラーが出て
> しまいます。
はそのせいだろ
0740デフォルトの名無しさん
2014/03/24(月) 23:47:28.16ID:6M4RZ6kUGCC:http://melpon.org/wandbox/permlink/gCuQdogNabmJhVeF
Clang:http://melpon.org/wandbox/permlink/FkystRrbxJlhHwvf
結論としては、dtype<T>は関係無い。dtype<T>はdouble_trait<T>::typeに展開されるのでTはnon-deduced context、よってここでは推論の対象とならない。
けれども、第二引数のcomplex<T>のTはdeduced contextで推論される。結局Tはcomplexのテンプレート引数に推論されてオーバーロード候補としてマッチする。
参考:http://melpon.org/wandbox/permlink/CYnRbBgzf2gL4vGL
ここも参考になるかも(英語)
http://stackoverflow.com/questions/8775202/how-do-template-aliases-affect-template-parameter-deduction
0741デフォルトの名無しさん
2014/03/25(火) 00:57:00.26ID:rAz4buIA俺には?だが、原因が分かるってレベル高いんだな
g++にはdemangleする関数あるのか、メモメモ(AA略)
0742デフォルトの名無しさん
2014/03/25(火) 01:03:54.21ID:dLACqsrmありがとうございます。
私は、多重定義のチェックと実体化のタイミングの問題かな?と考えました。
となると、コンパイルによってはダメかもしれないと考え、VC++ではどうなるんだろ?
と思った次第です。
>dtype<T>は関係無い。
そうですか。私は「double_trait<T>::typeで包むことによってコンパイラ
の多重定義のチェックから逃れているが、最終的にはdouble型の引数を
もった関数が実体化され、実パラメータがcharやintの時に暗黙の型変換
が働いている。」と解釈していました。
この考えは間違いですかね。
0743デフォルトの名無しさん
2014/03/25(火) 01:08:25.46ID:dLACqsrm↓
>>740 さんを読んで解釈しました。
0744デフォルトの名無しさん
2014/03/25(火) 02:59:03.84ID:cgyBljYJ現行規格の質問は現行規格スレでやれ
0745デフォルトの名無しさん
2014/03/25(火) 09:56:38.99ID:aIELEUmN0746デフォルトの名無しさん
2014/03/25(火) 18:38:12.70ID:ktix9ZhM0747デフォルトの名無しさん
2014/03/25(火) 22:03:54.20ID:DjVofhuk0748デフォルトの名無しさん
2014/03/26(水) 00:25:37.22ID:BPRBwKR1そのmelponてとこで手持ちのコードを走らせてみたらclang 3.4では通るもののgcc 4.8.1ではコンパイルエラー。
念のためideone(gcc 4.8.1になってる)でやってみるとコンパイル成功して実行もできる。
vc(2010, 2013)でも問題なし。
なんか変だな???
0749デフォルトの名無しさん
2014/03/26(水) 19:10:33.17ID:ysWuWvgs呼称はwandboxがよいと思う
ソースによるけど新しい機能についてはコンパイラにバグがある可能性もある、またはオプションの関係とかも
詳しいところは実際のソースを見なければわからない
0750デフォルトの名無しさん
2014/03/26(水) 19:56:25.59ID:9PLgomQWソースすら出さないであーだこーだって、独り言(俺日記)カキコしてもって感じだよね
0751デフォルトの名無しさん
2014/03/26(水) 20:40:31.98ID:BPRBwKR1そう言われてもね。
ソース垂れ流しても迷惑だし、ちゃんとポイントを絞って提示するのは難しい。
0752デフォルトの名無しさん
2014/03/26(水) 20:42:26.73ID:2pJmwYuc0753デフォルトの名無しさん
2014/03/26(水) 21:25:42.63ID:BPRBwKR1そのwandboxってやつのgccエラーを読んでもわからないので、抽出できない。
「 'v' は type 'int(int)' であってメンバーポインタじゃねーよ!」と言ってるらしいんだけど、
その行の近辺に 'v' なんて無いし・・・
0754デフォルトの名無しさん
2014/03/26(水) 21:45:50.64ID:Y1umZvGr0755デフォルトの名無しさん
2014/03/26(水) 21:48:18.57ID:Vfy/7S1e0756デフォルトの名無しさん
2014/03/27(木) 16:12:52.97ID:6aYzX2Zx0757デフォルトの名無しさん
2014/04/01(火) 20:42:02.69ID:gKhRKamL馬鹿のくせにエラそうに言うから誰も書き込まんだろ。
もう、お前ら来るな。陰菌じゃなかった、陰気臭い。
0758デフォルトの名無しさん
2014/04/01(火) 21:14:46.02ID:28c8XDsv0759デフォルトの名無しさん
2014/04/01(火) 22:04:36.61ID:+EnZFn0e0760デフォルトの名無しさん
2014/04/02(水) 00:28:39.77ID:4mJ5OkVZ0761デフォルトの名無しさん
2014/04/02(水) 01:11:58.18ID:xWN8C05F0762デフォルトの名無しさん
2014/04/02(水) 06:12:23.58ID:pjklZg5A> 馬鹿のくせにエラそうに言うから誰も書き込まんだろ。
馬鹿が書き込む必要はないからこれでよい。
過疎板で無理にすれ違い板違い場違いネタ雑談でスレを伸ばす必要はない。
0763デフォルトの名無しさん
2014/04/02(水) 07:26:49.12ID:16PuwTBy0764デフォルトの名無しさん
2014/04/02(水) 07:42:34.19ID:SfgYmxWg0765デフォルトの名無しさん
2014/04/02(水) 07:47:42.02ID:VoSgAfoQ0766デフォルトの名無しさん
2014/04/02(水) 10:04:03.61ID:X8BOgtKu0767デフォルトの名無しさん
2014/04/02(水) 10:07:17.45ID:VoSgAfoQ0768デフォルトの名無しさん
2014/04/02(水) 10:45:51.70ID:X8BOgtKuまだ外書レベルのようですね.kindle 経由で iPhone でしこしこ読んでいるけど結構厳しい(よる年波で近眼がつらい‥‥)
0770デフォルトの名無しさん
2014/04/02(水) 20:50:01.60ID:Oc3JiJZrC++14/C++1yなんだよ。
C++11だって使いこなせていない奴いるのに。
0771デフォルトの名無しさん
2014/04/02(水) 20:51:57.60ID:Oc3JiJZrじゃあ、お前が書き込むなよ。お前、ウザいんだよ。
職場でも嫌われ者だろ
0772デフォルトの名無しさん
2014/04/02(水) 20:57:19.75ID:PAouqAzj0773デフォルトの名無しさん
2014/04/02(水) 21:27:44.90ID:ueE6QFcL0774デフォルトの名無しさん
2014/04/02(水) 21:31:38.39ID:QnsIQKqw↓
C++の改定予定の次期規格のスレに物申す
この発想がキチガイ
0775デフォルトの名無しさん
2014/04/02(水) 21:38:22.33ID:YTP5IJHuいちいち支離滅裂だもんw
0776デフォルトの名無しさん
2014/04/02(水) 22:12:14.42ID:Oc3JiJZr0777デフォルトの名無しさん
2014/04/03(木) 02:29:15.18ID:xLDtsOGn0778デフォルトの名無しさん
2014/04/03(木) 10:48:28.43ID:IeRRdjD00779デフォルトの名無しさん
2014/04/03(木) 18:21:45.92ID:sk+nDb/g0780デフォルトの名無しさん
2014/04/08(火) 20:23:35.09ID:vxIM531p俺は好きだけど
0781デフォルトの名無しさん
2014/04/13(日) 00:42:36.67ID:jje258uF0782デフォルトの名無しさん
2014/04/13(日) 01:21:53.49ID:g6kjuewa面白い!()
0783デフォルトの名無しさん
2014/04/13(日) 15:26:13.37ID:gPopJ2Qe0784デフォルトの名無しさん
2014/04/13(日) 16:41:19.25ID:QfBMtLzF自分で食うだけならいいけど迷惑だから人に振る舞うなよ
0785デフォルトの名無しさん
2014/04/13(日) 16:46:11.25ID:wSq/pgWA料理ってそういうもんだから
0786デフォルトの名無しさん
2014/04/13(日) 16:54:31.75ID:g6kjuewa目分量を「アート」とか言っちゃう人かな?
0787デフォルトの名無しさん
2014/05/01(木) 06:16:27.89ID:jnur+x0Z0788デフォルトの名無しさん
2014/05/02(金) 21:31:40.17ID:IMg3w3ZxプロプライエタリなIntel製のコンパイラでその中間コードをネイティブコードにコンパイルする」
IntelがClangベースのC++コンパイラを開発 | スラッシュドット・ジャパン デベロッパー
http://developers.slashdot.jp/story/14/05/02/0425216/
2014年05月02日 16時03分
0789デフォルトの名無しさん
2014/05/04(日) 15:33:01.03ID:J9FrsreK意味不明なクソレスすんな
0790デフォルトの名無しさん
2014/05/04(日) 15:47:12.32ID:fKxZYvEo0791デフォルトの名無しさん
2014/05/04(日) 15:48:49.88ID:uzMRkq8y0792デフォルトの名無しさん
2014/05/04(日) 15:51:37.36ID:8lK5PBNC0793デフォルトの名無しさん
2014/05/04(日) 15:51:53.35ID:ZNtj5n0pここはツイッターじゃねぇ
意味不明なクソレスすんな
0794デフォルトの名無しさん
2014/05/04(日) 15:52:44.98ID:LHvIgNMr0795デフォルトの名無しさん
2014/05/04(日) 15:57:25.44ID:kkY/TYaH0796デフォルトの名無しさん
2014/05/04(日) 17:50:41.76ID:j7xk1fk5おまえのどこがえらいのかさっぱりわからん
0797デフォルトの名無しさん
2014/05/04(日) 18:50:46.13ID:BIZ4TF2L{
1500行くらい・・・
}
キチガイですよね?
0798デフォルトの名無しさん
2014/05/04(日) 18:59:41.45ID:n8bRVLF6だね。
0799デフォルトの名無しさん
2014/05/05(月) 00:03:57.91ID:r55hxj+Y0800デフォルトの名無しさん
2014/05/05(月) 03:18:19.56ID:Gkok4GNbIntelは科学計算や高速金融取引が主要顧客だろうから、
無理して新規格に追従しなくてもいいんじゃね?
0801デフォルトの名無しさん
2014/05/05(月) 09:44:39.50ID:vIqS8S8Iだと実行速度になるからなあ。
C++の最新規格を積極的に取り入れたいならClangだろうけど、実行速度を
考えるとインテルコンパイラなんだよ。コンパイラだけで数倍変わるケースも
あるからなあ。まあ、科学技術計算のところは往々にしてC++11すら必要な
いからなあ。
0802デフォルトの名無しさん
2014/05/05(月) 13:01:09.16ID:ulMr1Kur大風呂敷広げずに答えよ
0803デフォルトの名無しさん
2014/05/05(月) 13:42:04.45ID:vIqS8S8I現役なんだよ。スパコン向けのコードを書くときに、規格の問題でコンパイルに苦労
することがある。また、科学技術計算では線形問題を扱うことが多いので、Lapackや
MKLが使われるし、自前でコアな部分を書くときはインラインアセンブラだから、
今のところC++11が必要とされないんだよ。最も科学技術計算を行う研究者がC++11
とかに興味がないんだろうけどね。本質じゃないから。個人的には使ってもらいたい
と思うんだけどね。
0804デフォルトの名無しさん
2014/05/05(月) 13:47:12.04ID:dXEEoavT0805デフォルトの名無しさん
2014/05/05(月) 13:59:29.98ID:1BHBnJWIコンパイラのソースなんてGPLでもなければまず公開されていないと思われ
0806デフォルトの名無しさん
2014/05/05(月) 20:18:59.16ID:uepcHE1E0807デフォルトの名無しさん
2014/05/05(月) 21:02:53.84ID:G7yR9GEh研究者ならC++11覚えるより、研究にはげめだろ
本職、プログラマじゃないしな
0808デフォルトの名無しさん
2014/05/05(月) 22:47:09.24ID:YSa885x00809デフォルトの名無しさん
2014/05/06(火) 00:21:50.16ID:NL7z67wf下手にプラグマとかが足されていないC/C++で書くよりも
Fortranコードは高速かもしれない
0810デフォルトの名無しさん
2014/05/06(火) 00:46:52.06ID:M8aO/3niと思ってググって覗いて見ると、言語としてはとくに面白さがないようで。。
科学技術計算向けDSLみたいな立ち位置なのかしら
0811デフォルトの名無しさん
2014/05/06(火) 01:59:22.48ID:2BPuRbma標準では配列のインデクスの先頭が1なのが面倒。
fortranが速いのって、各関数で配列のサイズが明示されるからだと思うけど、違うのかな?
エイリアスの問題はfortranbナも生じると思b、ので、ここは滑ヨ係ないと思うbッど。
0812デフャHルトの名無しbウん
2014/05/06(火) 02:07:43.53ID:BDsjto8tそんな、処理系依存の機能を
さも普遍的であるかのように語られても
0813デフォルトの名無しさん
2014/05/06(火) 03:02:53.82ID:R4LFdeTLlisp族もがむばっているようだ、ロートルはあなどれない
0814デフォルトの名無しさん
2014/05/06(火) 04:28:48.58ID:NYusw8jW年配のエキスパート職の人に愛されているエキスパート向け言語
0815デフォルトの名無しさん
2014/05/06(火) 07:09:49.45ID:ug+nXQnt> fortranのコードってCからも呼べるが、標準では配列のインデクスの先頭が1なのが面倒。
Fortran って多次元配列のインデックスの付け方が他の言語と違うんじゃなかったっけ?
> fortranが速いのって、各関数で配列のサイズが明示されるからだと思うけど、違うのかな?
それは違うでしょ、C でも多次元なら明示しないとダメだし、一次元ならサイズは範囲外アクセスのチェックにしか使わないから。
Fortran のアドバンテージは主にベクトル化の作り込みとか、ライブラリとか、最適化のためのツールとかが充実してることだと思う。
>>812
いまどき、できない処理系なんてあるのか?
0816デフォルトの名無しさん
2014/05/06(火) 08:03:25.46ID:zGtSvv5a0817デフォルトの名無しさん
2014/05/06(火) 10:54:15.76ID:Yg7JhZN+恩恵にあやかれるのが一番大きいと言っていた。昔のスパコンは
ベクトル機が主流だったからなあ。
0818デフォルトの名無しさん
2014/05/06(火) 11:01:33.57ID:FBNZj3A1スパコン向けだとコンパイラがそのスパコン作った所の自作ってこともあるからな
C++11がそもそも使えなかったり
0819デフォルトの名無しさん
2014/05/06(火) 11:25:09.41ID:ftcgEc1V表現能力が高くない言語だから、最適化がしやすいんだよな
0820デフォルトの名無しさん
2014/05/06(火) 13:17:10.31ID:+EFNtusy自作っつーても1から作ってる訳じゃないし、要望ないから対応してないだけでしょ。
0821デフォルトの名無しさん
2014/05/08(木) 12:34:05.56ID:Ll0I2s7drestrict相当のことができんの?
0822デフォルトの名無しさん
2014/05/08(木) 13:43:06.59ID:JZCmTzL00823デフォルトの名無しさん
2014/05/08(木) 14:03:00.45ID:713NAhwCそりゃぁ、できるでしょ
規格にエイリアスが起こるような引数で呼出をしちゃダメって書くだけだから
でそれを知らずに使うと結果がおかしな事になるだけ
0824デフォルトの名無しさん
2014/05/12(月) 19:30:19.95ID:iANYuL+Z違う。ライブラリが優秀なだけ。
0825デフォルトの名無しさん
2014/05/12(月) 23:24:46.27ID:y9Wttb40だけであれば、コンパイル済みライブラリを呼び出し規約だけ合わせて持ってくればC/C++で同等の効果が得られるはずだが。
0826デフォルトの名無しさん
2014/05/12(月) 23:44:34.39ID:YQWleS5Kそうだよ
0827デフォルトの名無しさん
2014/05/12(月) 23:46:56.67ID:vVaOlzqd読んで
http://ja.wikipedia.org/wiki/LAPACK
0828デフォルトの名無しさん
2014/05/13(火) 00:05:22.43ID:TqSYjziR違う。エイリアスを禁止している。
0829デフォルトの名無しさん
2014/05/13(火) 00:21:54.82ID:zyf+D5WOFORTRAN屋のリソースが一番重要。
0830デフォルトの名無しさん
2014/05/13(火) 01:14:38.11ID:dZPvmt+0まあほぼ差ないよね?
0831デフォルトの名無しさん
2014/05/13(火) 01:24:02.00ID:zyf+D5WO0832デフォルトの名無しさん
2014/05/13(火) 01:29:12.40ID:XEtmCF4Zcでもコードが綺麗でintelコンパイラがしっかり並列化してくれるなら同じくらい
0833デフォルトの名無しさん
2014/05/13(火) 01:31:49.46ID:zyf+D5WO0834デフォルトの名無しさん
2014/05/13(火) 03:37:05.89ID:Y9eapwzT0835デフォルトの名無しさん
2014/05/13(火) 03:53:09.16ID:ikx/cn8e古くて新しい問題なので関連がないとは言えない……かもしれない
過去にはFortranよりも別名の解析が難しすぎて性能出せないからrestrictが入ったりした
いずれIntelのCilk Plus拡張みたいなのがC++にも入ったりするんだろうか
0836デフォルトの名無しさん
2014/05/13(火) 03:56:08.26ID:pwL99Gt3http://blogs.msdn.com/b/vcblog/archive/2014/04/16/parallel-stl-democratizing-parallelism-in-c.aspx
0837デフォルトの名無しさん
2014/05/13(火) 17:33:20.42ID:nq8xv96S0838デフォルトの名無しさん
2014/06/11(水) 08:43:17.47ID:sZLJbsHl範囲指定で演算出来るのとできないのじゃ全然違うだろ
a(4:16) = b(4:16) + c(4:16)
C++の言語仕様じゃこんな事出来ん。
C++で対抗するならCompiler依存の最適化に頼ってvalarray使うしかない。
0839デフォルトの名無しさん
2014/06/11(水) 09:27:46.69ID:PJoRkmgD0840デフォルトの名無しさん
2014/06/11(水) 11:50:08.04ID:01hDVrAoFORTRAN2008でも並列化されるかどうかは実装依存だろw
0841デフォルトの名無しさん
2014/06/11(水) 20:54:25.72ID:EAcelASi実装依存じゃあるが、std::valarrayは常用されないんで、
殆どのvalarrayを使わない外部のLibraryを
持ち込んだりすると大きな差が出る。
0842デフォルトの名無しさん
2014/06/12(木) 01:25:23.15ID:gBR3iv8wstruct Some{};
struct One
{
static int Some(void);
};
template<class Type> Moon(void)
{
auto someone = Type::Some();
}
Moon<Some>();
Moon<One>();
0843デフォルトの名無しさん
2014/06/12(木) 08:11:49.12ID:NHJ7e1s40844デフォルトの名無しさん
2014/06/12(木) 13:54:52.05ID:1owlvPjk仕様変更のことなのかこのバカが言いたいのは
0845デフォルトの名無しさん
2014/06/12(木) 19:43:58.13ID:pL3eo2akMoonの戻り値型書き忘れたけど戻り値の型と各関数の実装書いとけばCompileは通るだろうよ。
面白いのは、static関数の代わりにConstructorが使える事。
autoの仕様が変わる以前もstatic関数の代わりにConstructorを使えたが、
戻り値の型がConstructorと違う場合は不便だった。
0846デフォルトの名無しさん
2014/06/12(木) 20:00:01.48ID:by0Erjmi{
static ::std::string string(void)
{
return "Hello";
}
};
template<class factory> void Print(void)
{
auto message = factory::string();
std::cout << message << std::endl;
}
Print<Hello>();
Print<std::string>();
0847デフォルトの名無しさん
2014/06/12(木) 21:10:12.35ID:S879vZLc無知ですまんが それがどの仕様によるものなのか
教えてもらえないだろうか
0848デフォルトの名無しさん
2014/06/12(木) 22:28:30.40ID:0MXtuPFIってコンストラクタじゃなくて関数宣言じゃね
0849デフォルトの名無しさん
2014/06/12(木) 22:37:15.67ID:S879vZLcそっちじゃなくて
struct Some{}; に対して
var x = Some{}; だけでなく
var x = Some::Some{}; ができるらしい
ということじゃ
0850デフォルトの名無しさん
2014/06/12(木) 22:37:52.20ID:cQg3VuKdConstructorって言ってんのははSomeのデフォコン
0851デフォルトの名無しさん
2014/06/12(木) 22:44:08.45ID:nzSGZ+E8それ俺も不思議に思った。
出来ないよね?
0852デフォルトの名無しさん
2014/06/12(木) 22:45:19.54ID:S879vZLc出来ないと思ったけどVC++(CTP)で通ったのでマジかと思った
0853デフォルトの名無しさん
2014/06/12(木) 23:02:25.72ID:0MXtuPFIと思ったけどgcc 4.9.0でSome::Some{}が通らない
0854デフォルトの名無しさん
2014/06/12(木) 23:09:11.43ID:S879vZLcそれらしい記述が見つけられんかった
>>845の解説をキボンヌ
0855デフォルトの名無しさん
2014/06/12(木) 23:11:57.71ID:a0qy1iPO0856デフォルトの名無しさん
2014/06/12(木) 23:15:08.73ID:CZtMYB4X0857デフォルトの名無しさん
2014/06/13(金) 00:58:01.15ID:hmIHNc6xそれはできない。
3.4.3.1 [class.qual] p2 (N3936)
> ... Such a constructor name shall be used only in the declarator-id of
> a declaration that names a constructor or in a using-declaration. ...
0858デフォルトの名無しさん
2014/06/13(金) 04:28:38.17ID:LbGT7je00859デフォルトの名無しさん
2014/06/13(金) 04:35:34.24ID:OKMjmph60860デフォルトの名無しさん
2014/06/13(金) 05:23:52.19ID:+JhvPlQc0861デフォルトの名無しさん
2014/06/13(金) 10:43:02.97ID:9I0XJZWT0862デフォルトの名無しさん
2014/06/13(金) 11:04:32.57ID:X7OhNsdX0863デフォルトの名無しさん
2014/06/13(金) 20:11:13.22ID:UDg2skpP0864デフォルトの名無しさん
2014/06/13(金) 22:36:24.30ID:MHajdieU0865デフォルトの名無しさん
2014/06/14(土) 00:02:08.88ID:+uvAFgvW0866デフォルトの名無しさん
2014/06/14(土) 06:48:05.07ID:/TDJbnG00867デフォルトの名無しさん
2014/06/14(土) 07:07:02.61ID:oqKmDn6y0868デフォルトの名無しさん
2014/06/14(土) 11:24:32.20ID:kVfPiGuj0869デフォルトの名無しさん
2014/06/14(土) 15:43:57.07ID:s0fnKBCVその結果、方言と言う名の全く別の言語が大量に生まれた
ある環境で書いたコードが他の環境で動くよう意識すれば、ある程度書ける
それは規格あってこそだと思う
0870デフォルトの名無しさん
2014/06/14(土) 16:07:09.91ID:CAKJ4sQGそれを例えば99.5%動かせないと規格準拠を名乗れないとか決まってるもんじゃないの?
0871デフォルトの名無しさん
2014/06/14(土) 16:09:10.61ID:vfNFzGu5そんな規格は見たことがない
ただ誰もマトモにフル実装できない糞言語も珍しい
0872デフォルトの名無しさん
2014/06/14(土) 16:23:37.71ID:aHTZpW4+0873デフォルトの名無しさん
2014/06/14(土) 16:26:00.44ID:CAKJ4sQGFortranにはU_F95_TS、AdaにはACATSなんかのテストスイートがあるけど
0874デフォルトの名無しさん
2014/06/14(土) 16:41:48.49ID:CAKJ4sQGttp://www.iso.org/iso/home/store/catalogue_tc/catalogue_tc_browse.htm?commid=45202
C#とかRubyとかフル実装されてそうじゃね?実装を元に規格作ったんだから
AdaもACATSがあるから準拠率は高いよ、まあ改定にともないACATSがカバーしてない部分が増えてきたけど
BASICやPascalあたりは規格よりもデファクトスタンダードな文法互換の処理系の方が多いと思うw
Full BASICやExtended Pascalを通す処理系は少ないけど、N88BASIC風やUCSD Pascal風に書いとけば大体通るw
0875デフォルトの名無しさん
2014/06/14(土) 17:35:37.37ID:kVfPiGuj0876デフォルトの名無しさん
2014/06/14(土) 19:23:31.39ID:ni6zFfuh0か1、100%じゃないと意味が無いってやつが居るな
0877デフォルトの名無しさん
2014/06/14(土) 21:14:48.18ID:s0fnKBCVbasicの規格はホントになあ…
0878デフォルトの名無しさん
2014/06/14(土) 22:38:11.61ID:TjXeM4mhアナ ベラ ミル バンク
0879デフォルトの名無しさん
2014/06/15(日) 20:28:12.01ID:+/6EDhQc0880デフォルトの名無しさん
2014/06/16(月) 03:05:02.10ID:6StcDcqdググればわかる事だけに意図が判らんな
どーせ本当に聞きたいことは他にあるんだろ?
素直に言ってみ
あれがないよォォ〜あれが違うのォ〜あれが無きゃいやあああとかあんだろ
もしくは林檎だけは嫌なのォやめテェーとかその辺か
ほれほれ
0881デフォルトの名無しさん
2014/06/16(月) 03:29:42.14ID:CewFynVt0882デフォルトの名無しさん
2014/06/16(月) 15:29:57.12ID:lfARp+i50883デフォルトの名無しさん
2014/06/16(月) 15:55:21.79ID:inAhM+v50884デフォルトの名無しさん
2014/06/18(水) 11:06:30.77ID:SROYhCqR0885デフォルトの名無しさん
2014/06/18(水) 11:38:20.42ID:bWi5oQT80886デフォルトの名無しさん
2014/06/18(水) 16:08:27.06ID:sAJDpU640887デフォルトの名無しさん
2014/06/18(水) 21:38:15.35ID:2d3j0Gfz出版を人並みに急ぐとか
そういうことはしません
0888デフォルトの名無しさん
2014/06/18(水) 22:52:04.43ID:ZMMbatdC仕様策定には当たり前だが時間かけているけど。
0889デフォルトの名無しさん
2014/06/19(木) 12:23:54.10ID:XmTJejmRまだきょうぎちゅうなの?
0890デフォルトの名無しさん
2014/06/19(木) 12:39:01.26ID:EXEtiHUa0891デフォルトの名無しさん
2014/06/22(日) 17:06:27.03ID:5aisGSmT0892デフォルトの名無しさん
2014/06/23(月) 18:03:38.64ID:ak9GohgQ0893デフォルトの名無しさん
2014/06/24(火) 03:08:08.15ID:xQiqcsqW0894デフォルトの名無しさん
2014/06/24(火) 04:06:18.93ID:JJ61LHPx0895デフォルトの名無しさん
2014/06/24(火) 10:42:36.36ID:eAG9KtFAC++14かそれ以降では具体的なapplyテンプレートの仕様に吸収・再定義されてINVOKE自体は消滅する予定
0896デフォルトの名無しさん
2014/06/24(火) 18:47:30.95ID:agNpfg/I2014年年内に間に合うんかね
0897891
2014/06/24(火) 19:53:37.36ID:6rG++Vtoよくわかんないけど、https://isocpp.org/files/papers/N3932.txt とかのこと?
関数ラッパーを作ってみたけど、元の関数の機能のひとつ(デフォルト引数)がどうしても再現できなくて。
ファンクタならできるんだけど。
0899デフォルトの名無しさん
2014/07/02(水) 22:45:21.87ID:isei6xkR、と思って実験してみたら80万弱で頭打ちだった。
Wandbox上の[C++] clang HEAD 3.5.0 で terminate called after throwing an instance of 'std::bad_alloc' だと。
手で適当に展開したやつだと65536ぐらいだからずっといいけど。
0900デフォルトの名無しさん
2014/07/03(木) 03:41:17.83ID:nzgLUlGKそれってメモリ不足なんじゃ
0901デフォルトの名無しさん
2014/07/03(木) 06:49:15.61ID:4KEDy6y8そうだろうけど、コンパイラ・マジックでなんとかするのかと思ってた。
0902デフォルトの名無しさん
2014/07/03(木) 12:44:23.19ID:OnH7QKX26万80万っていうのは何がしたいんだ
0903デフォルトの名無しさん
2014/07/03(木) 21:01:29.81ID:4KEDy6y8再帰深度の問題かと思ったがそうじゃないみたい。
単に2つのindex_tupleをつなげるだけで大きさの限界にひっかかるね。
32768 + 32768 だとOKで 32767 + 32767 だとダメだとか。
0904デフォルトの名無しさん
2014/07/03(木) 21:06:19.58ID:4KEDy6y832769 + 32769 だとOKで 32770 + 32770 だとダメだとか。
0905デフォルトの名無しさん
2014/07/05(土) 13:09:02.08ID:ZUhQa0cg目盛りは最低でも20cmはほしいよな。
0906デフォルトの名無しさん
2014/07/05(土) 13:17:45.86ID:yCjkblvI0907デフォルトの名無しさん
2014/07/05(土) 13:24:28.66ID:DUAZ7FzQお前なら 10cm で十分だろ、見栄張るなよ (w
0908デフォルトの名無しさん
2014/07/06(日) 09:26:45.48ID:KxJqyqoxconstexpr はダメだね。
constexpr であるべきところに「constexpr」と書くことができるようになった、ってだけでまともに活用できない。
0909デフォルトの名無しさん
2014/07/09(水) 11:11:11.95ID:NRoV+z3Nint ar[n]はできるようになったのに
array<int, n> arはできないのか?
0910デフォルトの名無しさん
2014/07/09(水) 17:09:46.31ID:8DXcBnBI0911デフォルトの名無しさん
2014/07/10(木) 03:14:43.54ID:AqBf1VN+>C++14までで int ar[n]はできるようになったのに
ソースは?
0912デフォルトの名無しさん
2014/07/10(木) 04:49:03.76ID:uBnV0o0Lgcc4.10
0913デフォルトの名無しさん
2014/07/10(木) 23:44:02.38ID:Y22Tg+sigccはC++03以前から独自拡張で、
可変長配列実装してたろ。
てか14のヤツはアレのフィードバックなんだよな。
0914デフォルトの名無しさん
2014/07/11(金) 00:18:38.09ID:HlACSYaKというか複数の既存実装の足並み揃える為に規格化したりするわけで…
0915デフォルトの名無しさん
2014/07/11(金) 00:32:43.48ID:eEl8QyHVGCC「でもマイクロソフトが起源の関数は実装しません(キリッ)」
0916デフォルトの名無しさん
2014/07/11(金) 01:04:16.55ID:RRV/Pxnb0917デフォルトの名無しさん
2014/07/11(金) 01:08:25.82ID:s5/rwczw0918デフォルトの名無しさん
2014/07/11(金) 07:07:11.72ID:Zy+ItAcJ0919デフォルトの名無しさん
2014/07/12(土) 02:45:35.76ID:Xvs6Vz0j0920デフォルトの名無しさん
2014/07/12(土) 08:58:24.44ID:lB2A13Kvhttp://melpon.org/wandbox/permlink/5YCZLX4zyi6tPVqR
なんか方法ある?
0921デフォルトの名無しさん
2014/07/12(土) 10:48:50.91ID:SOVDXsjYどういう結果を求めてる?
shortとintでその引数では推論出来ないでしょ。
0922デフォルトの名無しさん
2014/07/12(土) 10:57:13.67ID:lB2A13Kvtest(dummy1<4,3,2,1>{})
test(dummy2<4,3,2,1>{})
というように、実引数だけで呼び出せることを求めてます。
dummy1 とか dummy2 という名前は明示的に与えてるんだし、曖昧になる要素ありますかね?
0923デフォルトの名無しさん
2014/07/12(土) 11:11:00.63ID:SOVDXsjYあ、すまん。
スマホで見てたんだけど、右端のコードが切れてて、適当に書いたサンプルコードだと思って、脊髄反応してしまった。
確かにぱっと見は曖昧さなさそうだねー。
0924デフォルトの名無しさん
2014/07/12(土) 11:20:08.34ID:lB2A13Kvうーん、困った。
それとコメントに「またはE=short, E=int の特殊化バージョンを作っておくとOK」と書いたけど、
正確には特殊化じゃなくて下みたいに型ごとに書けばOK、という意味です。
http://melpon.org/wandbox/permlink/uQssxr5tqoawd7Rw
どうしようかな・・・
0925デフォルトの名無しさん
2014/07/12(土) 13:33:52.36ID:0zpcsUQk推論されないのはそういうルールだからじゃないか。variadicになっても同じことだろう
14.8.2 Template argument deduction
...
13 A template type argument cannot be deduced from the type of a non-type template-argument.
14 [ Example:
template<class T, T i> void f(double a[10][i]);
int v[10][20];
f(v); // error: argument for template-parameter T cannot be deduced
? end example ]
0926デフォルトの名無しさん
2014/07/12(土) 14:50:12.75ID:SOVDXsjYなるほど。
勉強になったわ。
型パラじゃない(整数)パラメータの場合、その整数自体の型推論は行われないと、規格で定められていたのか。
そんな重箱のスミに見えるようなところまで文書化されているとは…スゴイなあ。
0927デフォルトの名無しさん
2014/07/12(土) 15:45:35.02ID:lB2A13Kvううーむ。
T i とあるところに i=20 が代入されても、T = int と型推論はされないってことですね。
http://melpon.org/wandbox/permlink/5YCZLX4zyi6tPVqR
の例だと、関数テンプレートに渡された引数は dummy1 ってクラステンプレートだから整数じゃないけど、
コンパイルエラーになる以上は規則違反なんだろう。
勉強になりました。
とりあえず明示化の方向で考えます。
0928デフォルトの名無しさん
2014/07/12(土) 16:55:48.06ID:kPUutF0WC++ でもいずれそのレベルの抽象化が可能になったりするかな?
0929デフォルトの名無しさん
2014/07/12(土) 17:12:56.31ID:beV14n2n0930デフォルトの名無しさん
2014/07/12(土) 17:13:34.43ID:kRf8d5DFtemplate< class > struct Car;
template< class car, class cdr > struct Car< Cell< car, cdr > >
{
typedef car Cell;
};
template< class > struct Cdr;
template< class car, class cdr > struct Cdr< Cell< car, cdr > >
{
typedef cdr Cell;
};
Car< Cdr< Cell< int, void > >::Cell >::Cell( 0 );
こういうのは昔から出来たけど。
0931デフォルトの名無しさん
2014/07/13(日) 14:14:43.59ID:wVt9Da1o基本を勘違いしてる
複数のテンプレート引数の導出はそれぞれ独立して行われてあとで結果が合成される
例の場合testの呼び出しでcherry=dummy1、それに伴い間接的にE=shortと導出されても
それはelemの導出には影響せず、elem単独では既出の理由で導出できない
0932デフォルトの名無しさん
2014/08/21(木) 23:38:50.40ID:/ywtKoXchttp://www.publickey1.jp/blog/14/c14standard_c_foundation.html
0933デフォルトの名無しさん
2014/08/21(木) 23:45:35.34ID:4ydyPDN/標準化は完了していない
標準化のためのStandard C++ Foundationが行う範囲の作業が完了しただけだろ
0934デフォルトの名無しさん
2014/08/22(金) 01:48:27.71ID:Ss0uhhJT次スレはこれでよろしく
C++17/C++1z 21
次次スレでここまでいくかなあ
0935デフォルトの名無しさん
2014/08/22(金) 10:42:55.91ID:va04FkVj0936デフォルトの名無しさん
2014/08/22(金) 12:22:35.15ID:kdIXnEbd0937デフォルトの名無しさん
2014/08/22(金) 18:50:43.50ID:KN4OudnK0938デフォルトの名無しさん
2014/08/22(金) 20:08:35.98ID:4E4Ckc04言葉通りじゃないか
0939デフォルトの名無しさん
2014/08/22(金) 21:51:48.81ID:TZKu350+0940デフォルトの名無しさん
2014/08/22(金) 22:09:36.74ID:cOUk6V+7\だはははは/
0941デフォルトの名無しさん
2014/08/22(金) 22:45:22.57ID:BtBgkxO2新機能を既存の機能のC++ソースに書き換えるプログラムがあれば
最新機能を古いコンパイラで使用できる!
0942デフォルトの名無しさん
2014/08/22(金) 22:57:17.25ID:ORkYdEOI>C++はC言語に一時的に直す
お前それ初期(Cfront)だけの話じゃねーかwww
と思ったら、Comeau C/C++なるものが出てたのね……
0943デフォルトの名無しさん
2014/08/22(金) 23:06:49.35ID:OcYTE7Kh0944デフォルトの名無しさん
2014/08/22(金) 23:13:39.74ID:ORkYdEOI変換しても綺麗にいくとは思えないんだが……
0945デフォルトの名無しさん
2014/08/22(金) 23:24:39.38ID:BtBgkxO2>>942
C++が(職場で)出始めたころ、そういうのがあると聞いた後は気にしなかった。
ビルドは結果だけが大事なので
0946デフォルトの名無しさん
2014/08/24(日) 22:31:04.82ID:mYuQxuS20947デフォルトの名無しさん
2014/08/31(日) 01:32:38.04ID:2e3y5kSi0948デフォルトの名無しさん
2014/08/31(日) 01:56:23.34ID:XfNPho5u0949デフォルトの名無しさん
2014/09/05(金) 16:50:48.65ID:T9CXoMFs0950デフォルトの名無しさん
2014/09/05(金) 19:04:48.52ID:9Ff5uN6P0951デフォルトの名無しさん
2014/09/05(金) 23:52:07.60ID:VwPznMIz0952デフォルトの名無しさん
2014/09/06(土) 03:19:39.42ID:rgIubcJXstatic int a;
extern int a; // 内部リンケージ
このexternのKUSOっぷりがカオス
0953デフォルトの名無しさん
2014/09/06(土) 03:23:25.17ID:+yqDGqEx0954デフォルトの名無しさん
2014/09/06(土) 08:19:01.07ID:lwBPQO1J0955デフォルトの名無しさん
2014/09/06(土) 17:44:54.56ID:J1qt6hmDつーても、外部リンケージされるようなグローバル変数は基本的にそれと分かる名前を付けるしなあ
0956デフォルトの名無しさん
2014/09/06(土) 19:40:16.77ID:8Zg9vTOU0957デフォルトの名無しさん
2014/09/06(土) 21:16:17.61ID:J1qt6hmDただ、それがまさか別言語にまでずっと残っちゃってるとは思わなかっただろうな
0958デフォルトの名無しさん
2014/09/07(日) 10:40:08.29ID:mookg+Pi0959デフォルトの名無しさん
2014/09/07(日) 11:13:28.53ID:gl+S4Fm7carries_dependencyだっけ?
素人が教科書読んでオナニーをぶちまけだだけにしか思えない
0960デフォルトの名無しさん
2014/09/07(日) 11:39:03.10ID:BgiTajQp0961デフォルトの名無しさん
2014/09/07(日) 12:23:14.84ID:gu/ubhhCどういう点でそう思った?
少なくとも現在の仕様じゃ、コンパイラ実装者も利用者も
どっちも幸せにならないという指摘は正しいと思うがね。
ポインタのデリファレンスや構造体のメンバアクセスなど
ごく限られた操作だけ依存関係を認め、翻訳単位を越えたら
依存関係も勝手に切れる、というくらいの制限をつけちゃっても
良いんじゃないかな。それでもほとんどのユースケースは
カバーできるだろうし、そうじゃないケースは大人しく
m_o_acquireを使え、としても問題ないと思う。
0962961
2014/09/07(日) 12:43:06.41ID:gu/ubhhC> ごく限られた操作だけ依存関係を認め、翻訳単位を越えたら
> 依存関係も勝手に切れる、というくらいの制限をつけちゃっても
> 良いんじゃないかな。
ここら辺は、Javaの final Field Semantics と同じような感じだね。
まあ、Javaのほうはdata raceの振る舞いもdefinedでなければならない
という至上命題があるから、非アトミックな変数へのアクセスにも
ほぼ0コストで適用可能な最低限の保証しか与えられない
っていう事情のせいだけど。
0963デフォルトの名無しさん
2014/09/07(日) 15:52:38.34ID:+LUmQfg6Javaはそんなこと関係ないけど。
0964デフォルトの名無しさん
2014/09/07(日) 20:10:03.70ID:gu/ubhhCacquireフェンスではなくconsumeで十分なケースって限られてるし、
そのほとんどはごく短いdependency chainしか使ってないのは
N4036に書かれている通り。
それに、consumeの同期プリミティブなんて単なるポインタの
デリファレンスなんだから、特に厳しい制限じゃないでしょ。
そもそもLinux界隈の要請でdependency orderingが導入されたのに
そのLinux界隈からダメ出しされるってのがアホらしい。
0965デフォルトの名無しさん
2014/09/08(月) 04:29:49.05ID:mzdSwfQl静的リフレクション(4111)並のありがた迷惑さ
0966デフォルトの名無しさん
2014/09/08(月) 14:22:48.62ID:TnAxbc61アサインする場合、アセンブラ->C->C++と来た人とHTML->JS->JAVA->C++と
来た人がC++11以降を使いこなすのはどっちが楽なんだろうか?やっぱ後者かな?
0967デフォルトの名無しさん
2014/09/08(月) 14:54:08.13ID:d8/AVYX4一般的には後者だろうなあ
0968デフォルトの名無しさん
2014/09/08(月) 16:09:15.79ID:xRRUpyPOそんな人間が100人ずつでもいれば多少の傾向はあるだろうけど、結局は人それぞれだろ。
0969デフォルトの名無しさん
2014/09/08(月) 17:51:54.91ID:fGcbSRT1c++03を完全に使いこなすレベルなら
どっちでも変わらんだろう。
0970デフォルトの名無しさん
2014/09/08(月) 19:34:09.84ID:gA33VOFIっていうかC++14の話題じゃぬぇ
0971デフォルトの名無しさん
2014/09/08(月) 20:12:15.26ID:PbRMq4gS0972デフォルトの名無しさん
2014/09/08(月) 20:52:19.09ID:n7pvvs3o0973デフォルトの名無しさん
2014/09/08(月) 21:30:43.49ID:Jv/wwZ8M0974デフォルトの名無しさん
2014/09/09(火) 08:35:57.10ID:emHe+KlL0975デフォルトの名無しさん
2014/09/09(火) 08:39:09.74ID:FgVvxIw00976デフォルトの名無しさん
2014/09/09(火) 08:51:54.11ID:BYnTfUN/0977デフォルトの名無しさん
2014/09/09(火) 10:55:27.26ID:OPiQRysDuvaとか?
0978デフォルトの名無しさん
2014/09/09(火) 22:13:28.65ID:mdiVvxkoC++110になったらもはや違う言語だろうな。
0979デフォルトの名無しさん
2014/09/09(火) 22:35:30.16ID:9c0hFlR70980デフォルトの名無しさん
2014/09/09(火) 22:57:15.81ID:9n77QlVwアーキテクチャ毎にほとんど別モンだが・・・
0981デフォルトの名無しさん
2014/09/09(火) 23:22:34.71ID:1lY9Uczt(まあ仕様改定のせいで2種類あるけど)
0982デフォルトの名無しさん
2014/09/09(火) 23:57:10.26ID:3avbYtDV0983デフォルトの名無しさん
2014/09/10(水) 01:35:29.77ID:LZqJBGfNレス数が950を超えています。1000を超えると書き込みができなくなります。