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


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

C++0x 3



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/


596 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:20:55 ]
strong typedefってどういう物?
usingとかとは違くて?

597 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:41:23 ]
typedef元とtypedef先が別の型として扱われるというtypedef。

598 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:43:10 ]
C++09 になってんのか、もう。

599 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:58:14 ]
え、まじ?

600 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 21:12:18 ]
あ、いや、ちゃうわ。ごめん。

601 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:19:45 ]
>>597
それあったらテンプレートがまたワクワクするものになりそうだな

602 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:38:47 ]
数値型の暗黙の変換はC/C++の型システムの穴だから
strong typedef でまずその穴をふさぎたい

603 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:43:14 ]
そんなもん別に機能にしなくてもこれでいいんじゃないの

class AnotherType : public Type{
private:
 operator Type(); //実装しない
}

604 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:44:25 ]
そんなこともできるのか。それは欲しい



605 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 23:11:50 ]
intとかでもやりたいんでは

606 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 22:50:15 ]
実装あるもんなw

607 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 23:24:53 ]
もう#define int nanikaしろよ

608 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 00:05:38 ]
要するにこういうの作ればいいんだろ?

#include <iostream>

#define STRONG_TYPEDEF(base, name) \
template <typename Dummy = void> class name##_ { \
public: \
name##_() { } \
explicit name##_(const base& value) : m_value(value) { } \
base& get() { return m_value; } \
const base& get() const { return m_value; } \
name##_& operator=(const name##_& rhs) { m_value = rhs.m_value; return *this; } \
friend name##_ operator+(const name##_& lhs, const name##_& rhs) { return name##_(lhs.m_value + rhs.m_value); } \
private: \
base m_value; \
}; \
typedef name##_<> name

struct TestBase { void show() { std::cout << "Test" << std::endl; } };

STRONG_TYPEDEF(int, Hoge);
STRONG_TYPEDEF(TestBase, Test);

int main() {
Hoge a(1), b;
b = Hoge(2);
std::cout << (a + b).get() << std::endl;

Test t;
t.get().show();
}

609 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 07:37:07 ]
手抜きをするためのものなのに、メンバがコピーされないようじゃ意味がない。

610 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 10:29:55 ]
mailing 2008-05 きてるお

611 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 11:09:49 ]
^ω^

612 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:32:56 ]
>>610


613 名前:デフォルトの名無しさん mailto:age [2008/05/21(水) 12:37:34 ]
コンテナとかSTLがみんなconcept化されてる!

614 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:42:31 ]
ドラフトは N2606



615 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:48:01 ]
www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2601.html
がスゲイ


616 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:04:02 ]
C99と同じ感じになったりしないの?
現行のC++から、この仕様のC++にキレイに置き換わってしまう?
また、複雑難解怪奇な文法を覚え直さなければいけないの?

617 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:49:37 ]
>>616
GCCだけでなくVC++も実装してくると思う、現にTR1も対応しているし。
C99よりは広まると思う。

文法はどうしようもないな。現在でも複雑怪奇なんだから
今さら少しくらい増えたってどうってことないって構えをしたほうがいいかも。


618 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:50:26 ]
better C++03 として使う人が多そうな予感。
auto とかは使うけど・・・って感じ。

619 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:38:48 ]
ぶっちゃけC++が廃れる要因になるだけな気がしないでもない

620 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 20:49:42 ]
化粧を覚えたてでちょっと厚塗りしてみた美少女中学生のような感じだな
化粧のナイステクを見つけるのが先かこっちが見慣れるのが先かというところか

621 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:21:56 ]
今はネイティブで代わりがないから C++ 一択だけど、ObjCを綺麗にしたようなクラスベースの
言語があれば、もう C++ にこだわる気になれないなぁ。うんざりする

622 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:36:41 ]
Cに速度的な最適化を期待したのが間違いだったんだ。
やるならfortranを++すれば良かったのに。

623 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 21:38:00 ]
>>622
そこで Fortress ですよ

624 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:35:21 ]
>>621
だからD言語を使えと(ry



625 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:36:59 ]
>>623
あれは数値計算用途以外では使いたい文法でもないけど・・・
それ以前に、なかなか開発進んでなくね?

626 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:40:30 ]
>624
GC がいらない

627 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 23:09:24 ]
>>616
(ほぼ)今のままのコードで動く。

628 名前:デフォルトの名無しさん mailto:age [2008/05/21(水) 23:10:26 ]
>>626
GCありというか明示的メモリ管理なしのC++ってもの使ってみたい。
DとかJavaじゃなくて、まっとうなC++で。

629 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 00:25:00 ]
>628
だが、リソース管理は結局自前だろ
ファイナライザは入れないんだよな

630 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 20:45:13 ]
>>618
現行でC++03としても使えてない奴の方が多いからな
その辺はしゃーない

631 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:04:12 ]
サブセットでヘッダの要らない仕様を作ってくれないかな。
どうせ、プリコンパイルヘッダみたいな事やるんだから、
.cppをプリコンパイルして参照解決したっていいじゃん。

632 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:09:22 ]
そうやってサブセットのスーパーセットを考えてるうちに C# になってしまいました

633 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:12:52 ]
>>631
モジュールシステムを設計しなおすことになると思う

634 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:49:18 ]
仕様を作るのはいいけどさ、
とりあえずその前にほとんどのコンパイラベンダに言いたいんだが
export を実装してくれよ!

Comeau 以外どこか実装してんの?



635 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:51:43 ]
実装が大変な割に大したメリットがないからじゃないの

636 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:54:50 ]
exportの実装がめんどうになった時点で分割コンパイルなんてあきらめればよかったのだ

637 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:59:03 ]
extern inline なんかどこも完全実装できてないしな
Comeauでさえ

638 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 23:51:17 ]
>>615
提案しているのが Lawrence Crowl だし,ほんの一瞬とはいえ
本気にして「なんだ!?とち狂ったのか!?」とか思った俺涙目www

639 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 05:58:24 ]
>>638

ま、いつか入るかもな。競合は大丈夫そうだし。
16進浮動小数点数リテラルとか知名度低いのもあるし、こっそり紛れてても誰も騒がないでしょw

640 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 18:12:45 ]
ASCII外の字をプログラム本文に持ち込むことをあっちの国の人らが許すはずがない

641 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 19:20:22 ]
コメント文字列をプログラム本文とみなすかどうかだが
普通にやってるとチェコ語だかでパース失敗しなかったか?

642 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 19:26:27 ]
なんだそりゃ。
まさかチェコ語は、スラッシュやアスタリスクにまで独自の文字を割り当てているのか?

643 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 20:05:42 ]
チェコ語ということはutf-8か?
-Ku は当然付けてるよね。

644 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 21:06:45 ]
コメントに??付けるだけでおかしくなります



645 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 22:02:47 ]
もう APL になったつもりで変な字いっぱい使おうぜ

646 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 22:46:19 ]
トリグラフも迂闊に追加できないこんな世の中じゃ。

647 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:01:50 ]
つまりクアッドグラフが求められる時代になったということですね

648 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:42:00 ]
concept 使った for_each がこう提案されてる
auto がこんな使い方できるんだ

template<InputIterator Iter, Callable<auto, Iter::reference> Function>
Function for_each(Iter first , Iter last , Function f );

役立たずだった auto が大人気だ

649 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 23:46:41 ]
大人気で広まる

恐ろしい副作用が見つかる

カオス

の黄金パターンですね、わかります

650 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 00:04:34 ]
>>639
十六進浮動小数点数は、C99由来だから知名度低くても余裕で入るだろ、たぶん。

651 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 01:17:23 ]
concept のようなメタタイプを持つ言語がほかにあるんでしょうか?
Haskellのほかに
静的型付言語で

652 名前:デフォルトの名無しさん mailto:age [2008/05/24(土) 03:58:02 ]
>>651
conceptの型理論を書いた人たちがGってのを作ったよ。
他にはない。concept_mapみたいなglueがあるのは。

653 名前:デフォルトの名無しさん mailto:sage [2008/05/24(土) 11:43:16 ]
conceptの一番の利点はコンパイル時のエラーメッセージ

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++は生き残るわけですね分かります






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

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

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