- 1 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 21:53:47 ]
- The C++ Standards Committee
www.open-std.org/jtc1/sc22/wg21/ wiki ja.wikipedia.org/wiki/C%2B%2B0x C++0x pc11.2ch.net/test/read.cgi/tech/1149440647/ C++0x 2 pc11.2ch.net/test/read.cgi/tech/1191842951/
- 654 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 12:39:46 ]
- >>653
concept_mapを理解してないね。
- 655 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 12:41:52 ]
- 今度はコンセプトメタプログラミングの時代ですか
- 656 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 12:44:38 ]
- 自然な流れじゃないかな
ジェネリックス系としては
- 657 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 14:23:27 ]
- そしてC++1xでは
コンセプトの型を規定するスーパーコンセプトが目玉機能になるんですね わかりました
- 658 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 14:32:03 ]
- 滅多metaな超言語それがC++1x
- 659 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 15:10:08 ]
- C++ 捨てて別言語使った方がいいんじゃね?
と、マジで思う今日このごろ
- 660 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 15:11:07 ]
- そんなあなたにC++0x。 もはや別言語だから。
- 661 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 15:12:28 ]
- まともなC++0x処理系ができるまでは暫く離れるのもいいだろうな
- 662 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 15:18:31 ]
- C++3xで会いましょう
- 663 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 16:09:52 ]
- namespaceスコープでアクセス制御が出来たらいいと思わね?
namespace hoge { private: void priv(); public: void pub() { priv(); } } hoge::priv(); // error
- 664 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 16:20:34 ]
- >>663
入れ子にした無名 namespace で代用できない?
- 665 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 16:44:37 ]
- >>657
concept はコンセプトをパラメータにとることが出来るのでメタコンセプトは必要ないと思う
- 666 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 16:46:20 ]
- 無名にしなくても、boostの
namespace detail { はそういうことやってるんだわな。 >>663はスロット単位でやりたいんだろうけど。
- 667 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 17:02:23 ]
- >>654
「自尊心はあっても自信が無い」から、衝動で突っ込むけど説明添える勇気は無いんですね、わかります。
- 668 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 17:51:48 ]
- 整数のイタレータのサンプルコード見ればいいんじゃない? > concept_map
- 669 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:01:51 ]
- autoとcenceptでC++も分かりやすい言語になるかなあ。
- 670 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:04:22 ]
- ならんね
- 671 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:13:27 ]
- そもそも、現行C++も分かりやすい言語にするために
突っ走ってきたという面が多かったと思う、D&E読んだ直後の感想。 しかし、現実はと言うと……。 0xも同じ道を辿るに違いない。
- 672 名前:デフォルトの名無しさん mailto:age [2008/05/24(土) 18:17:27 ]
- >>671
> 分かりやすい言語にするために 皮肉とかじゃなく、そうは思えません。 やはりCとの互換性を抑えた上での、実行効率をメインに考えてきたと思います。
- 673 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:21:59 ]
- >>665
kwsk
- 674 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:42:42 ]
- Perl6 の二の舞になる、なんてことはないよな。あはは
- 675 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 18:42:58 ]
- >>673
やっぱ出来ねえや 勘違い
- 676 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 20:09:08 ]
- 最近は使う人にやさしくなってきてるよね
つらいのはコンパイラベンダやライブラリベンダ
- 677 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 20:21:53 ]
- ここまで巨大仕様になるともう新規参入とか不可能だよな
- 678 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 08:48:19 ]
- GCCからforkすればいい。
- 679 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:55:43 ]
- 現行の auto って型名のかわりに
auto i = v.begin(); みたいな書き方をする以外に使い方ありますか?
- 680 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:07:49 ]
- 型名の現れうる場所全てに現れて
福音と混沌をもたらします
- 681 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:05:28 ]
- >648
- 682 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:13:09 ]
- 自動変数の宣言
- 683 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:13:47 ]
- 使うだけの人間としては規格の議論より処理系がいつできるかの方に興味がある
- 684 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:57:30 ]
- 規格書いてる奴らが作る訳じゃないからな
2020 ぐらいじゃね?
- 685 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 09:04:38 ]
- だが実装可能性ぐらいは考えて欲しいんだぜ。
- 686 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 15:41:55 ]
- もう委員会が「完全準拠のコンパイラを最初に作ったチームに賞金」でいいだろ。
商用コンパイラとかだとその賞金が売り上げを下回るっていう可能性もあるから、 MSの無償配布してるものと同じ様なライセンスでなければいけないとかいう条件をつけてさ。 そうすれば販売方法を確立できない個人でも目指す事ができるし、万が一先を越されてしまっても その場合は販売すれば良い。
- 687 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 15:53:55 ]
- C++03の下位互換性から考えると、exportも必須なわけか?
そんな非現実的で理想を追求した完全準拠のコンパイラは、まず実用にはならないと思われる。
- 688 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 18:07:34 ]
- 外部テンプレートなんかさっさと規格からぶち殺して
貴重な予約語exportをもっと他の有意義なことに使えるように努力すべき
- 689 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 19:47:46 ]
- >>686
個人でやれるような範囲の話ではない
- 690 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:16:07 ]
- MSがバイナリインデックスの並び順で特許取っててそこをCOMに使ってるから無理
テーブルを先頭に持ってくるんだったか程度のもの
- 691 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:22:03 ]
- 特許なんてそのうち切れるさ
- 692 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 22:23:11 ]
- vtblを頭に持ってくるって話?
ABIだと思ってたが、特許なのか?
- 693 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 23:46:26 ]
- >>684
Conceptは、Douglas Gregorが規格も処理系(ConceptGCC)も書いてるよー。
- 694 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 00:25:18 ]
- そのGCCではあのクソ気持ち悪いラムダ式とかもコンパイルできるのかい
だったらちょっと試してみたい
- 695 名前:デフォルトの名無しさん mailto:age [2008/05/29(木) 06:43:01 ]
- これはconcept branchだから、
他の新標準機能は入ってないよ。 gcc.gnu.org/projects/cxx0x.html lambdaはgcc headで実装始まってるはず。
- 696 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 08:49:35 ]
- >>686
2100頃までC++は生き残るわけですね分かります
- 697 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 11:46:02 ]
- std::*Integralが、
std::*IntegralLikeになってやがる。 FloatingPointLikeってなんだよ // Revision 1の頃から変わっていたのか
- 698 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 13:39:48 ]
- C++0xはそろそろJavaの時のような誇大広告を始めて盛り上げるべき。
- 699 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 13:52:25 ]
- どんだけ人集めてもmove semantics見たらみんな引くって。
大衆には見向きもせずプログラミング言語の実験室として頑張っていただきたい。
- 700 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 14:03:10 ]
- もはや C++ 自体が大衆向けじゃないよな。
でも、必要としている一部の人間のために頑張って頂きたい。w
- 701 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 14:05:12 ]
- まずはまともな処理系を、話はそれからだ
- 702 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 14:11:26 ]
- Move SemanticsとかVariable TemplateとかConceptとか、
ライブラリを書く奴のための機能だから、 一般ピーポーが覚える必要は無いんじゃない? とは言ったものの、どうやって実装しているか分からないと、 俺としては、使う気にならなかったりするから微妙だ。 STLヤベー、超便利ー。 ↓ イテレータとか関数オブジェクトとか分からん。勉強するか。 ↓ いわゆる、STLの解説本とかではまともに説明されてねー。何コレ。 ↓ テンプレート解説本なら詳しく載ってる。やっべ、スゲー詳しい。面白れー。 ↓ Boostたのしー。 ↓ あれ、当初の目的って何だっけ? STL? デザインが貧弱すぎじゃね? あれって。
- 703 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 16:25:03 ]
- 素人の人たちに受けのいい機能も少し追加されたんじゃない。
auto とか。
- 704 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 16:26:10 ]
- conceptだってコンパイル・エラー見やすくなるしね。
- 705 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 04:01:49 ]
- 今回は入門者のためにもなる改良がたくさんあるとどこかで聞きました
- 706 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 14:58:46 ]
- c++であと10年は持つのかな
すでにフォートラン化しはじめてる?
- 707 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 16:44:53 ]
- 当分、いろんな意味でC++を越える言語は出てこないだろうな。
- 708 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 20:08:45 ]
- export イラネ
予約語から外してほしい
- 709 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 20:23:20 ]
- export の実装って結局二度以上同じソースをコンパイルしてるだけだからな
prelink 工程というのがあってそこで全部解決するまで再帰的にコンパイルしつづける 関数がインラインにならないという効果はあるがそれ以上の利益はない気がする
- 710 名前:デフォルトの名無しさん mailto:age [2008/06/05(木) 21:53:24 ]
- >>706
FORTRAN 77とは全然違う。 FORTRAN 77は数値計算の世界では現役のまま陳腐化した。 C++0xは現役のまま最先端を走り続け、プログラマを置き去りにし続けてる。
- 711 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:55:37 ]
- 置き去りかよw
- 712 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 22:04:19 ]
- 道を踏み誤りつつあるマッドサイエンティストみたいなもんだな
- 713 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 22:04:26 ]
- exportは後々autoみたいに役に立つ日がくるのでほっといてやってください
- 714 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 22:53:05 ]
- >>710
> C++0xは現役のまま最先端を走り続け 「他言語に出来ることが出来ないので悔しい」 って、入れた機能がほとんどじゃないかい?
- 715 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 22:53:25 ]
- >710
Fortran2008は結構強烈だぞ?
- 716 名前:デフォルトの名無しさん mailto:age [2008/06/05(木) 23:00:35 ]
- >>714
conceptはHaskellだけじゃない、似てる機能があるのは。 しかもそれは後から分かったことだし。 traitsを置き換えるために生まれた。 move semanticsだってかなり狂ってるしね。 明示的なメモリ管理がある言語で導入するとは。
- 717 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:50:13 ]
- C++ はあまりお作法がない言語だったと思っていたんだが、今は作法が大杉って困る
- 718 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:03:11 ]
- 意味が不明瞭だ
お作法って具体的にはどういうこと?
- 719 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 13:01:23 ]
- >>713
registerもいつか役に立つ日が来るのでしょうか?
- 720 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 13:06:07 ]
- >>715
Fortran2008のco-Arrayなんて、 Crayの実装の後追いじゃないですか。 C++0xなんて規格が独走状態ですよ。 一緒にしないでください、失礼です。
- 721 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 13:45:38 ]
- >>718
俺のエスパー能力を駆使すると、パラダイムをお作法と訳してるんじゃねーの。 禿げ曰く「C++はマルチパラダイム言語だ」と。 パラダイムがないつーか、ひとつに縛らない言語だがな。 パラダイムが何も無いのがすばらしいなら、ifとgotoだけでいいじゃねーかと。
- 722 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 16:09:13 ]
- 規格を崇拝するお前らに楽しい問題。
class string { public: string(const char*); }; void f(string, string, bool = false); // 1 void f(string, bool = false); // 2 void g() { // どちらの関数が呼ばれるか。 f(“Hello”, “Goodbye”); } 俺はできなかった。 まあ、Overload Resolutionの厳密なルールを暗記してるわけじゃないし。 答え:ttp://blogs.msdn.com/vcblog/archive/2008/06/05/some-c-gotchas.aspx これをもうちょっと人間的にするために、 なにかプログラマが優先順位を指定できるような機能はつくれないのかな。
- 723 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 16:39:20 ]
- 暗黙的に呼ばれる変換コンストラクタに依存するのはよくないってのは有名な話じゃね。
だれしも一回は引っかかる罠だけどね。
- 724 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 17:49:35 ]
- その辺いじくるとスマートポインタが軒並みぶっ壊れるから
触れないし触らない方がいい
- 725 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 17:52:57 ]
- つ f(string("Hello"), string("Goodbye"));
- 726 名前:デフォルトの名無しさん [2008/06/06(金) 18:45:45 ]
- 正直ついていけてません。すみません orz
- 727 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 19:38:40 ]
- >>719
もしかしたら、&の使用を制限する目的に使えるかもしれない。 例えば、register int foo して func(& foo) したらエラーになるとか。 で、参照渡しができるのなら、ポインタの使用を禁止できることになる。 # 意味が違いすぎるなw
- 728 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:37:33 ]
- 俺も最近まで register に & を付けれないと思ってたけど、
C++ では付けれるらしいよ。
- 729 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:42:27 ]
- もうラムダ式のキーワードにregister使ったらいいじゃん
どうせ予約語の意味なんてメチャクチャなんだから
- 730 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:42:58 ]
- 何度も言うようだが inline がいいと思うお
- 731 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:45:01 ]
- 却下されたんだろそれ
- 732 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:47:45 ]
- やっぱり解析が凶悪になるからか。
- 733 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 22:20:43 ]
- >>731
だれか提案したの?
- 734 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 22:45:36 ]
- ここの誰かが突撃してはいはいワロスワロスされた
- 735 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 22:57:33 ]
- キチガイ度で言えば現状もどっこいどっこいだと思うだけどな。
- 736 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 23:32:07 ]
- 最初から頭の使い方が足りなくて狂ってるとしか思えないのと
考えに考えた末に発狂するのとでは筋が違うと思う。
- 737 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 23:42:24 ]
- オーバーロードは罠が多いから・・
特に特殊化と混じったりするとわけわからん
- 738 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 23:54:55 ]
- >>734
それどこで? comp.std.c++ と comp.lang.c++ と流し読みしてるけど、とりあえず見覚えが無い。
- 739 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 01:11:13 ]
- inlineも規格化前に勝手な独自拡張でクチャクチャに使われてきた経緯があるから
あまり触れたくないよな
- 740 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 19:41:12 ]
- inlineってどうするの?
m = inline (auto x, auto y) { return x > y ? x : y; } (10, 20); とか?
- 741 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 20:23:44 ]
- 無名関数をinlineと呼ぶのはすげえ違和感がある
- 742 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 20:35:49 ]
- __lambdaとか_Lambdaでいいからキーワード追加してくれよ。
適当に#defineして使うからさあ
- 743 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 21:21:55 ]
- 別に _Lambda だろうが [&] だろうがいいけど
とりあえず #include <lambda> をくれ。
- 744 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 20:07:30 ]
- C++03 の extern inline って C++0x にまだ残ってる?
- 745 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 15:24:25 ]
- >>722
でどっちが呼ばれるの? ふつーに考えて1でしょ? (ブーッという音が聞こえてるようだ)
- 746 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 15:31:18 ]
- 失礼、答えつけててくれたんだね。。。
んで、pointer-to-boolなんて知らなかったので、さらに調査中。 昔はほんとにC++好きだったんだけどな。今は規格がぎしぎししてるね。
- 747 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 18:31:18 ]
- その馬鹿げた変換を何とかするためのnullptrだが
全然何ともなってないといういつものパターンなんだろ
- 748 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 19:25:05 ]
- もうポインタと整数
整数とbool は互換禁止にすべきだな やりたきゃ明示的にキャストしれと
- 749 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 19:27:18 ]
- if(smart_ptr)が出来なくなるとブーたれる奴らが強硬に反対するので無理です
- 750 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:17:32 ]
- それは暗黙的変換とは関係なくね?
- 751 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:18:01 ]
- NULL と比較しろよ・・・。
ただ、if (T* p = dynamic_cast<T*>(q)) { ... } がやりたいので 無くなると困る。
- 752 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:47:28 ]
- 「さらば、式の中でも変数を定義できるようにして進ぜよう!」
- 753 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 21:45:57 ]
- なんでよりカオスな方向に解決するんだよw
- 754 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 22:27:43 ]
- オカス!?美少女中学生を!?
|

|