5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

C++0x 4

1 :デフォルトの名無しさん:2008/06/26(木) 00:25:25
The C++ Standards Committee
http://www.open-std.org/jtc1/sc22/wg21/

wikipedia
http://ja.wikipedia.org/wiki/C%2B%2B0x

C++0x
http://pc11.2ch.net/test/read.cgi/tech/1149440647/
C++0x 2
http://pc11.2ch.net/test/read.cgi/tech/1191842951/
C++0x 3
http://pc11.2ch.net/test/read.cgi/tech/1204808027/

449 :デフォルトの名無しさん:2008/09/13(土) 03:14:42
まあ、新しい関数宣言は人のソース読むときには知っとかなきゃならんな…
こんなんだよな

[]main(int argc, char *argv[]) -> int{return 0;}

きめえwwwwwwwwww
自分では絶対に書かない

450 :デフォルトの名無しさん:2008/09/13(土) 03:53:18
>>449
これまでのパラダイムから、あまりにもかけ離れすぎてて
これだったら無い方がまだマシ


451 :デフォルトの名無しさん:2008/09/13(土) 04:58:26
こういうことしたい時に便利かも。

template <typename T>
struct complex
{
T re;
T im;
template <typename T2>
[]operator+(const complex<T2>& rhs) -> complex<decltype(re+rhs.re)>{ /* ... */ }
};



452 :デフォルトの名無しさん:2008/09/13(土) 05:10:05
だったらこれ認めるようにすりゃいいじゃないか…

complex<decltype(re+rhs.re)> operator+(const complex<T2>& rhs){ /* ... */ }

rhsを宣言より前に使ってるからダメってのはわかってるよ
でもそんなの戻り値型は後で解決することにすりゃいいだけじゃん

453 :デフォルトの名無しさん:2008/09/13(土) 05:14:15
見慣れない以外の欠点が無いならどうでもいいかと

454 :デフォルトの名無しさん:2008/09/13(土) 05:57:38
コンストラクタとかどうなんの
もしかしてこう?

[]Foo::Foo() -> : a(0) {}

オェェェェ

455 :デフォルトの名無しさん:2008/09/13(土) 08:47:11
N2582 って通りそうなん?

>>454
コンストラクタではその書き方はできないだけだと思われ。

456 :デフォルトの名無しさん:2008/09/13(土) 10:02:04
>>449
要は、戻り値は後ろにある方が型推論ができていいってことらしい。

あと、数学でも、関数の宣言って f: 定義域 → 値域 なのよね。

けども、この書式で、C++ でやるとキモいよな。

>>452
C++ 屋さんは LL 文法大好きだから。

457 :デフォルトの名無しさん:2008/09/13(土) 13:21:18
言語としての優劣はともかく、コードの視認性では最近のLLに大きく劣ることになるわけだが。

458 :デフォルトの名無しさん:2008/09/13(土) 13:31:32
LL違うwww

459 :デフォルトの名無しさん:2008/09/13(土) 13:44:26
C++ がそっちの意味の LL なわけねぇww

460 :デフォルトの名無しさん:2008/09/13(土) 13:59:07
そのうち、Perl みたいに $ とか @ とか出てきそうだw

461 :デフォルトの名無しさん:2008/09/13(土) 16:50:02
>>455
じゃあコンストラクタ、デストラクタ、変換関数は新形式では書けないって事なのかな
書ける関数と書けない関数があるような一貫性のない書き方はダメだなぁ

462 :デフォルトの名無しさん:2008/09/13(土) 16:54:41
$と@は色んな事情で使えないってD&Eで禿が言ってた

463 :デフォルトの名無しさん:2008/09/13(土) 16:55:47
コンストラクタは現時点でも特殊じゃん。
戻り値書かないのはコンストラクタ・デストラクタだけなんだし。

新書式の目的が戻り値の型推論だっていう目的を考えても、
戻り値のないコンストラクタに使えてもしょうがないし。

464 :デフォルトの名無しさん:2008/09/13(土) 16:55:52
もう[]に別の意味を付けるのはやめて!
[]のHPは0よ!

465 :デフォルトの名無しさん:2008/09/13(土) 17:02:29
それを言ったらC++のHPは(ry

466 :デフォルトの名無しさん:2008/09/13(土) 17:14:28
>>448
あとコンストラクタ関係(委譲、default/delete)は便利だと思う

>>454
ラムダからの類推で行くと、書けたとしても
[]Foo::Foo() : a(0) {}
となるだけでは?
まあそこまで行くと[]つける意味は皆無に等しいけど

467 :デフォルトの名無しさん:2008/09/13(土) 17:21:57
>>463
と、変換関数な

[]operator int() -> intって書かせることになるのかなぁ

468 :デフォルトの名無しさん:2008/09/13(土) 17:25:23
どういう使われ方想定してるのかな
今まで通り普通は旧形式で書いて、戻り値で型推論したいときだけ特別に使う物なのか
それとも旧形式をobsoleteとして新しいプログラムは全部新形式で書かせることを狙ってるのか

後者だとしたら書けない関数があるのはまずい

469 :デフォルトの名無しさん:2008/09/13(土) 17:56:04
>>465
このC++はバージョンアップするたびに規格書の厚みがはるかに増す…

470 :デフォルトの名無しさん:2008/09/13(土) 18:13:16
ttp://cpplover.blogspot.com/2008/09/c0x.html

471 :デフォルトの名無しさん:2008/09/13(土) 18:23:39
n2582はどうなってんの?

472 :デフォルトの名無しさん:2008/09/13(土) 18:48:33
却下されろとみんなが願ってるけど
例によって祈り空しく採用される流れ

473 :471:2008/09/13(土) 18:56:28
>>470に追記入ったな
というか、n2582でググったらあのブログがトップに出てくるから気になって書き込んだんだが、
知らなかったわけはないので忘れてたってことだろうか

個人的には>>470の追記と同じく、面白いと思うけどな
気持ち悪いのはラムダ関数の構文であって、
それをとりあえず認めるならば、それと統一が取れていてまだマシ

474 :デフォルトの名無しさん:2008/09/13(土) 19:01:11
[]が関数を表す予約語ならまだいい感じなんだがな

function main(int argc, char *argv[]) -> int{return 0;}
function Foo::Foo() : a(0) {}

Cっぽくはないがそれほど悪くない

475 :デフォルトの名無しさん:2008/09/13(土) 19:09:05
いまさらfunctionとかを予約語にするわけにはいかんって話だしなあ

fncdefとかだめですか
fncdef main() -> int;
fncdef Foo::operator int();

// Wikipediaのラムダの例を改変
// http://ja.wikipedia.org/wiki/C%2B%2B0x#.E3.83.A9.E3.83.A0.E3.83.80.E9.96.A2.E6.95.B0.E3.81.A8.E3.83.A9.E3.83.A0.E3.83.80.E5.BC.8F
int total = 0;
int value = 5;
fncdef&[value](int x) { total += (x * value) };

476 :デフォルトの名無しさん:2008/09/13(土) 19:23:30
色々ぐぐってみた

fncdef 14件
funcdef 14500件
fundef 861000件
deffnc 189件
deffunc 12900件 (HSPで使われてる)
deffun 1170件
lambdadef 15件
lambdef 2580
lmbdef 8
lmddef 4
lmbddef 1
deflambda 118
deflamb 42
deflmb 24
deflmd 42

うーん、fncdefかな

477 :デフォルトの名無しさん:2008/09/13(土) 20:03:43
日本語の教科書なら速攻でεπιστημηさんが書いてくれると思う。

478 :デフォルトの名無しさん:2008/09/13(土) 20:43:12
絶対誰かが思い付いててかつ却下されてそうだけど、
「C++0xの関数定義用記号をUnicodeに追加する」
という案はどうだろう?

479 :デフォルトの名無しさん:2008/09/13(土) 20:52:46
却下

480 :デフォルトの名無しさん:2008/09/13(土) 21:20:41
速攻却下されておまたが濡れ濡れになっている美少女中学生がいるな・・・

481 :デフォルトの名無しさん:2008/09/13(土) 21:29:54
>>478
おまえはくさび文字使って60進リテラルでも書いてろw

482 :デフォルトの名無しさん:2008/09/13(土) 21:58:42
_Functionでいいよもう。

それで、<stdfunction>で#define _Function functionしとけ。

483 :デフォルトの名無しさん:2008/09/13(土) 22:40:21
function をキーワード化でいいじゃん。
え、昔のコード? そんなもん機械的に書き直せばいい。

484 :デフォルトの名無しさん:2008/09/13(土) 22:45:33
機械的にリファクタリング出来るほど、素直な言語ならここまで悩む必要はなかったはず。

485 :デフォルトの名無しさん:2008/09/13(土) 22:51:08
機械的にコンパイルできる言語が、機械的にリファクタリングできないわけがない。

486 :デフォルトの名無しさん:2008/09/13(土) 22:56:47
ソースがどっか行っちゃってて書き直せないこともあってだな
そういうのとリンクできないと困ったりするんだよ

まあfunctionなんて名前の関数は最低だけどな

487 :デフォルトの名無しさん:2008/09/13(土) 22:57:19
できなくはないけど難しいからツールが発展してこなかった

488 :デフォルトの名無しさん:2008/09/13(土) 23:08:29
まあここで何をグダグダ言おうとキーワードフォビアの標準化委員会が新予約語なんて取り入れるはずがない
個人的にはfunctionなんかよりconceptだのrequiresだのの方がよっぽど問題起こしやすそうだと思うが

489 :デフォルトの名無しさん:2008/09/14(日) 01:06:05
むしろなんでそんなにfunctionなりなんなり、記号ではなく言葉でないと嫌なのか。

490 :デフォルトの名無しさん:2008/09/14(日) 01:09:22
記号でもいいけど、卑猥なAAみたいな記号は厭だ。w

491 :デフォルトの名無しさん:2008/09/14(日) 01:16:57
記号でもいいが今回のは悪趣味
センスのかけらもない

492 :デフォルトの名無しさん:2008/09/14(日) 01:25:25
二項!が使われていなかったことに注目してテンプレート引数を!(...)にしたDを見習うべき。

493 :デフォルトの名無しさん:2008/09/14(日) 01:27:20
cpp_0x_reserved_word_function でいいお

494 :デフォルトの名無しさん:2008/09/14(日) 01:42:10
キーワードにも名前空間が必要かww

495 :デフォルトの名無しさん:2008/09/14(日) 02:26:53
using keyword function = _Core::function;

変態言語を名乗るならこれぐらい出来ないとな

496 :デフォルトの名無しさん:2008/09/14(日) 05:31:56
[]とか->って関数と何の繋がりもないからな
予約語もそうだけど同じものに全然違う意味持たせまくると暗号になっちゃう

497 :デフォルトの名無しさん:2008/09/14(日) 08:08:56
0xまでには間に合いそうにないからC++xxにしろよ。

498 :デフォルトの名無しさん:2008/09/14(日) 12:31:06
西暦20xx年とかいうと安っぽいSFみたいだ

499 :デフォルトの名無しさん:2008/09/14(日) 12:32:23
おっとロックマンの悪口はそこまでだ

500 :デフォルトの名無しさん:2008/09/14(日) 12:41:38
可変個引数テンプレートとクロージャのおかげでboostのFunction objects and higher-order programmingがとんでもなくシンプルもしくは不要になるんだな〜
でもいつ仕様が確定するのやら…

501 :デフォルトの名無しさん:2008/09/14(日) 12:47:58
boost::eggでやってるのが素で、さらにハイパフォーマンスでできるわけですか凄いですね

502 :デフォルトの名無しさん:2008/09/14(日) 20:37:08
先人の偉大な変態行為を規格化するという
しんどい作業なのでもうちょっと時間がかかります

503 :デフォルトの名無しさん:2008/09/14(日) 21:44:04
>>497
0F年まであと7年もあるから余裕かと

504 :デフォルトの名無しさん:2008/09/14(日) 21:54:44
>>503
それは八進数リテラルだ

505 :デフォルトの名無しさん:2008/09/14(日) 22:04:05
先に2000をHexにしろよw

506 :デフォルトの名無しさん:2008/09/14(日) 22:18:42
ヲイラが生きている間で勘弁して下さい ><

507 :デフォルトの名無しさん:2008/09/14(日) 22:23:14
C++くらいのインフラになると変な変更される方が怖い。

508 :デフォルトの名無しさん:2008/09/14(日) 22:58:20
しかし、まともな神経の人が書いたコードは
相当無茶な変更がない限り、ほとんど影響が無い罠

509 :デフォルトの名無しさん:2008/09/14(日) 23:37:54
0xが存在しなかったとしても、処理系のバージョンアップでコンパイルできなくなるなんてよくある話。
将来コンパイルが通らなくなったとしても、0xのせいとばかり思われないでほしい。
多少は0xのせいの部分もあるかもしれないけど。

510 :デフォルトの名無しさん:2008/09/14(日) 23:58:06
0xいらない所は03をずっと使い続ければいいだけの話だしな
0xでないと書けないものが新たに加わる訳じゃないし

511 :デフォルトの名無しさん:2008/09/15(月) 00:28:38
>>507
どうせコンパイルオプションで disable できるから安心ですよw

512 :デフォルトの名無しさん:2008/09/15(月) 01:29:14
待て待て、enableがデフォルトとか困る

513 :デフォルトの名無しさん:2008/09/15(月) 08:13:47
disableしたら、
コンパイラ付属のライブラリがほとんど使えなくなると思われますが。
今回はかなり大きな改正ですので。
template入った時以来?


514 :デフォルトの名無しさん:2008/09/15(月) 09:33:49
#ifdef ガードでどうにでもなるんでは?

515 :デフォルトの名無しさん:2008/09/15(月) 09:43:53
>>514
#include <iostream>
しただけでコンセプト満載なんですよ。
iteratorがコンセプト化されるので。

516 :デフォルトの名無しさん:2008/09/15(月) 09:56:34
ifdefなら平気じゃん。

517 :デフォルトの名無しさん:2008/09/15(月) 10:00:00
アルファギークの大半がLL言語に移行したというのに

なんなのこの体たらく

518 :デフォルトの名無しさん:2008/09/15(月) 10:07:39
↑ブログ読みすぎのバカ


519 :デフォルトの名無しさん:2008/09/15(月) 10:15:46
>>516
iostream使いたい時は具体的にどう書くの?

>コンパイラ付属のライブラリがほとんど使えなくなると思われますが。

520 :デフォルトの名無しさん:2008/09/15(月) 10:22:24
標準iostreamの中身を

#ifdef __CPP_ZX_
#include <c++0x/iostream>
#else
#include <c++/iostream>
#endif

とすればいいだけのことじゃないかという意味

521 :デフォルトの名無しさん:2008/09/15(月) 10:26:02
>>520
バイナリ提供のライブラリも切り替えなきゃいけないのと
混在環境でどうするかが大変そうだな。

522 :デフォルトの名無しさん:2008/09/15(月) 10:30:33
Concept抜きのライブラリも提供される事が前提なわけね。
そういう手厚いコンパイラなら、コンパイル時オプション指定で可能でしょうね。
ただtemplate導入時の事を考えると、(二枚仕立ては皆無に近かったので)
新しいバージョンのコンパイラからC++0xへの切り替えを行うのでしょうね。


523 :デフォルトの名無しさん:2008/09/15(月) 11:01:28
iostream.hを思い出したぜ

524 :デフォルトの名無しさん:2008/09/15(月) 11:16:37
たぶん一番悩むのが入門書書く人だろうな
conceptなんて入門者に説明すんの大変だろうし

その辺はまるっとスルーかな

525 :デフォルトの名無しさん:2008/09/15(月) 11:56:43
>>524
今でさえテンプレートとかろくに解説していないのはよくあることなんだから、当然無視だろ。

526 :デフォルトの名無しさん:2008/09/15(月) 12:54:39
せめてコンストラクタでは初期化子並びを教えろと

527 :デフォルトの名無しさん:2008/09/15(月) 14:09:08
でもコンストラクタとは何ぞという説明をする時に
その中でさらにコンストラクタ呼んでる例見せるとわかりにくいんだよな
あれは教えづらい

528 :デフォルトの名無しさん:2008/09/15(月) 14:11:13
まず組み込み型と構造体を
デフォルトコンストラクタの書き方で初期化できるあたりから教えてみたら

529 :デフォルトの名無しさん:2008/09/15(月) 14:19:57
それも考えたけど、その話から入ると
デフォルトのデフォルトコンストラクタの話も先にしなきゃならなくなるし…
(どうでもいいけど何とかならないかなこの名前)

530 :デフォルトの名無しさん:2008/09/15(月) 14:25:05
スレ違いです。


531 :デフォルトの名無しさん:2008/09/15(月) 14:51:30
コンパイラ生成のデフォルト・コンストラクタ

532 :デフォルトの名無しさん:2008/09/15(月) 15:04:16
>>524
今や入門者が使う言語ではないので、入門書は要らないのではないか?w

533 :デフォルトの名無しさん:2008/09/15(月) 15:13:22
最初から上級者を育てるための導入書として書いた方がいいかもしれんね

534 :デフォルトの名無しさん:2008/09/15(月) 15:28:24
こうしてまたC++は狭く深くなるのであった

535 :デフォルトの名無しさん:2008/09/15(月) 15:35:50
ちょっとしたアプリ書いたらコンパイルが終わらなくなりそうな
仕様てんこ盛りだなw


536 :デフォルトの名無しさん:2008/09/15(月) 15:44:40
>>534
懐は広く入口は狭い
巾着みたいなもんだなw

537 :デフォルトの名無しさん:2008/09/15(月) 16:19:13
入り口閉められて出られなくなるんですね

538 :デフォルトの名無しさん:2008/09/15(月) 16:54:36
>>537
食虫植物キタ━━━━━━(゚∀゚)━━━━━━ !!

539 :デフォルトの名無しさん:2008/09/15(月) 16:59:01
>>536
名器ですね。わかります。

540 :デフォルトの名無しさん:2008/09/15(月) 18:25:38
>>537は童貞だな
いや、あるいは膣痙攣の被害sy

541 :デフォルトの名無しさん:2008/09/15(月) 18:43:23
名器でググって顔を赤らめブラウザの履歴を見てあわてふためく美少女中学生

542 :デフォルトの名無しさん:2008/09/18(木) 23:58:09
>>532
Stroustrup が入門書を書いたみたい

543 :デフォルトの名無しさん:2008/09/18(木) 23:58:49
びょーん・すっぽすっぽ

544 :デフォルトの名無しさん:2008/09/19(金) 02:06:49
D言語って来ないの?

みんなC++0xに行っちゃうの?

545 :デフォルトの名無しさん:2008/09/19(金) 02:28:58
VisualStudio並のIDEが出来たら行くよ

546 :デフォルトの名無しさん:2008/09/19(金) 04:04:49
GCを簡単に取り外す方法が用意できたら行くよ

547 :デフォルトの名無しさん:2008/09/19(金) 09:15:40
>>544
JavaとC++があるから。
俺様言語は必要ない。

548 :デフォルトの名無しさん:2008/09/19(金) 09:16:46
アキラさんがこのスレはレベルが低いって嘆いてたよ
皆もっとペーパー読もうぜ

549 :デフォルトの名無しさん:2008/09/19(金) 09:27:02
他に大した情報元もないって言ってた気がするんだけど。

548 と両方が真だとすると、
それは日本のレベルが低いんでは。

550 :デフォルトの名無しさん:2008/09/19(金) 09:28:45
まあこの板の中ではレベル高いほうだろw
残念ながら英語だと読む気が激減する人が多いと思われます

ところで0xって10進法じゃなくてry

551 :デフォルトの名無しさん:2008/09/19(金) 09:41:25
2ちゃんのスレに全力でレスする奴もおらんだろ。
上の方に「誰も指摘しない、俺は規制で書き込めない」って
ブログのURL張られていたけど、w付きのおふざけレスにはレスしないよー

552 :デフォルトの名無しさん:2008/09/19(金) 12:20:36
まぁ、何か恥かいたときに「本気出してないからだ」って
自分に言い聞かせられる状態を常に保って書くのが2chだしな。

553 :デフォルトの名無しさん:2008/09/19(金) 12:32:15
いや、俺はリアルで全力出せない分全力でレスして全力で恥をかくぞ

554 :デフォルトの名無しさん:2008/09/19(金) 17:57:47
確信度によって態度変えるのが皆のため

555 :デフォルトの名無しさん:2008/09/19(金) 20:34:41
http://twitter.com/cpp_akira/statuses/926725424

556 :デフォルトの名無しさん:2008/09/19(金) 20:50:19
cpp_akiraさんもう何がしたいのか分からなくて痛々しくなってきてるからやめて。

557 :アキラ:2008/09/19(金) 21:20:31
また誤解されるのはイヤなので書いておきます。

548-551の話は、私のことではなくhitoさんのことですよね。
なのでTwitterでは、そんなこと言ってない、というようなことを書きました。
それと、555は私ではありません。

558 :デフォルトの名無しさん:2008/09/19(金) 21:20:56
>>556
cpp_akira より晒し続けてるバカのほうが痛々しいし心配だ。

559 :558:2008/09/19(金) 21:21:32
あ、すまん age てもうた。

560 :デフォルトの名無しさん:2008/09/19(金) 21:25:03
>>557
>>555 みたいなのは相手をするだけ調子づくだけだから、シカトこいたほうがいいよ。
それが >>555 みたいなヤツの為にもなるし。相手にすると双方、馬鹿を見ることになるよ。

561 :デフォルトの名無しさん:2008/09/19(金) 21:31:08
Twitterで誰が何やってるとか、いちいち構うなよ

562 :デフォルトの名無しさん:2008/09/19(金) 22:02:30
>>555より>>548だろ、痛々しいのは。


563 :デフォルトの名無しさん:2008/09/19(金) 22:07:18
同じ人じゃね?w

564 :デフォルトの名無しさん:2008/09/19(金) 22:11:14
お前らもっとレベル高い話しろよ。
人の事なんてどうでもいいだろ?C++0xの話をしろC++0xの話を。

565 :デフォルトの名無しさん:2008/09/19(金) 22:27:11
じゃ、話題でも振るか。
late_checkは必要悪なんだろうか。

late_check {
//以下、スレ違いの話題も可

566 :デフォルトの名無しさん:2008/09/19(金) 22:31:20
}

567 :デフォルトの名無しさん:2008/09/19(金) 23:07:44
>>565
ないとどうにもならん。

N2719を読んで鬱。
俺にmove semanticsは使いこなせるだろうか…

568 :デフォルトの名無しさん:2008/09/19(金) 23:35:32
そんなキモチワルイ構文よりプロパティをですね

569 :デフォルトの名無しさん:2008/09/20(土) 00:30:49
わちゃー! late_check!
なんだこれは

直感的に拒否反応が出たけど
でも今はしっかり飲んじゃってるんで理解できないや

570 :デフォルトの名無しさん:2008/09/20(土) 00:34:50
また性懲りもなく「xxxは僕です」ごっこやってんのか
ウザいを通り越してイタいぞ

はてなだかツイッターだかしらんが村から出てくんなよ
ガキが

571 :デフォルトの名無しさん:2008/09/20(土) 00:41:03
ここは C++0x を語るスレなんであって、C++0x を語る人を語るスレではないのでそこんところよろしく。

572 :デフォルトの名無しさん:2008/09/20(土) 09:29:42
美少女中学生を語るスレでもあるぞ

573 :デフォルトの名無しさん:2008/09/20(土) 09:44:10
違いますやめてください迷惑です

574 :デフォルトの名無しさん:2008/09/20(土) 11:48:28
hitoに触れるなよ
人間性に問題がある奴なんだから

575 :デフォルトの名無しさん:2008/09/20(土) 12:13:55
人間性に問題ないプログラマなんているの?
C++やってるやつなんて特に

576 :デフォルトの名無しさん:2008/09/20(土) 12:28:41
それでも >>570 みたいな匿名で粋がってるだけのチキンと一緒くたにはされたくないです!><

577 :デフォルトの名無しさん:2008/09/20(土) 12:31:55
そこでデレて!

578 :デフォルトの名無しさん:2008/09/20(土) 13:10:49
みんな好き…

579 :デフォルトの名無しさん:2008/09/20(土) 13:50:34
またアキラか

580 :デフォルトの名無しさん:2008/09/20(土) 15:40:33
>>575
開き直るなよ屑hito

581 :デフォルトの名無しさん:2008/09/20(土) 15:44:10
for(;;);

582 :デフォルトの名無しさん:2008/09/20(土) 23:54:38
0bの話しようぜ!

583 :デフォルトの名無しさん:2008/09/21(日) 00:27:12
>>582
それは2011年になっちゃったってこと?
それとも2進リテラル?

584 :デフォルトの名無しさん:2008/09/21(日) 07:23:11
オービー?

585 :デフォルトの名無しさん:2008/09/21(日) 18:47:31
いいえ女子中学生です

586 :アキラ:2008/09/23(火) 13:57:11
これだから2chは・・・

587 :デフォルトの名無しさん:2008/09/23(火) 14:46:22
はいはい偽物

588 :デフォルトの名無しさん:2008/09/23(火) 14:55:37
美少女中学生の人気に嫉妬

589 :デフォルトの名無しさん:2008/09/23(火) 14:58:09
スレッドスコープ変数とかあるのかな

590 :デフォルトの名無しさん:2008/09/23(火) 15:19:17
スレッドとは何かを言語で規定しなきゃならなくなるからなぁ
無理だろ

591 :デフォルトの名無しさん:2008/09/23(火) 15:26:28
>>590
そこはもう済んでると思うよ。

592 :デフォルトの名無しさん:2008/09/23(火) 16:17:30
済んでるの?
スレッド関係はライブラリにするんじゃなかったっけ
あったとしてもスレッドの寿命に合わせて管理されるヒープ変数を保持するテンプレートクラスとか
そんなんだろ

593 :デフォルトの名無しさん:2008/09/23(火) 16:42:55
ちゃんとメモリモデルから言語に組み込まれてるよ。↓こんな感じで。(ドラフト N2723 から)
> 1.10 Multi-threaded executions and data races [intro.multithread]
> 1 Under a hosted implementation, a C++ program can have more than one thread of execution (a.k.a. thread)
> running concurrently. The execution of each thread proceeds as defined by the remainder of this standard.
> The execution of the entire program consists of an execution of all of its threads. ...

594 :デフォルトの名無しさん:2008/09/24(水) 09:08:21
>>592
最低でも、
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/
のタイトルくらいは眺めてくれよ。paper本文は読まなくていいから。

あと、
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2705.html
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/sd-1.htm

595 :デフォルトの名無しさん:2008/09/28(日) 21:54:28
この世にはスタックとヒープしかないっていうCの潔さが好きだったのに…

596 :デフォルトの名無しさん:2008/09/29(月) 01:39:28
>>595
getenv(3)やstdio.hの事も忘れないであげてください。

597 :デフォルトの名無しさん:2008/10/09(木) 05:12:59
News 2008-10-08: The 2008-10 mailing is available
News 2008-10-08: The C++ Standard Core Language Issues List (Revision 59) is available
News 2008-10-08: The C++ Standard Library Issues List (Revision 60) is available

598 :デフォルトの名無しさん:2008/10/09(木) 05:46:44
N2763からnamed lambdaとblock-local functionが取り除かれている。
残念だ。

599 :デフォルトの名無しさん:2008/10/18(土) 14:08:10
finalとか追加されんのか

class hoge [[ final ]]
{
}

sealedが欲しかった俺としてはうれしいが文法が・・

600 :デフォルトの名無しさん:2008/10/18(土) 14:26:37
finalとconstって、どう違うんだ?
継承不可ってだけ?

601 :デフォルトの名無しさん:2008/10/18(土) 14:54:22
属性が後ろに付くのがダサイ

602 :デフォルトの名無しさん:2008/10/18(土) 15:07:13
じゃあDつかおうぜ

603 :デフォルトの名無しさん:2008/10/18(土) 15:27:20
なぁにconstメンバ関数と一緒さ。

604 :デフォルトの名無しさん:2008/10/18(土) 15:30:11
まあ、Cの時代から属性は後ろに書くものだったからなあ…

605 :デフォルトの名無しさん:2008/10/18(土) 15:43:30
他が前にたくさん付き過ぎなんだよ

606 :デフォルトの名無しさん:2008/10/18(土) 16:13:54
遂にconceptが草稿に入った

607 :デフォルトの名無しさん:2008/10/18(土) 16:33:48
いまさらどうした?
ドラフトが出たのは九日も前だぞ。

608 :デフォルトの名無しさん:2008/10/18(土) 17:04:23
後ろに付くのはいいけど[[]]が激しくダサい
wikiのリンクみたい

609 :デフォルトの名無しさん:2008/10/18(土) 18:47:15
Microsoftが頑張ってC++/CLIのと似た構文にしてくれればいいのに、とVC++使いは思う。

610 :デフォルトの名無しさん:2008/10/18(土) 18:51:21
なんだかんだ言ってC++/CLIの記法は悪くないよな
まぁ、使う気はないんだが

611 :デフォルトの名無しさん:2008/10/18(土) 21:38:43
洗練されているって感じがいいんだよなC++/CLIの文法は

612 :デフォルトの名無しさん:2008/10/19(日) 01:43:41
しがらみがないってだけじゃね

613 :デフォルトの名無しさん:2008/10/19(日) 01:51:44
しがらみがないおかげでグロ構文が必要ないことは素晴らしいことだ

614 :デフォルトの名無しさん:2008/10/19(日) 01:59:57
[&]

615 :デフォルトの名無しさん:2008/10/19(日) 02:07:57
spaced keywordなんて最悪のグロだ。頭おかしいと思う。

616 :デフォルトの名無しさん:2008/10/19(日) 04:08:17
C++/CLIよりはManaged C++の方がマシだな俺は。

617 :デフォルトの名無しさん:2008/10/19(日) 07:55:21
泥団子lisp

618 :デフォルトの名無しさん:2008/10/19(日) 12:53:24
>>616
属性に関してはどっちも同じ構文だぞ。

619 :デフォルトの名無しさん:2008/10/19(日) 12:55:43
public ref class Hoge sealed

620 :デフォルトの名無しさん:2008/10/19(日) 18:59:55
C++でGCサポートしようと思ったらああいう方法しかないよなぁ

621 :デフォルトの名無しさん:2008/10/19(日) 19:16:10
C++/CLIはチルダだったっけ

622 :デフォルトの名無しさん:2008/10/19(日) 19:35:54
ハット。結局、構文を整理し直したら C++/CLI になった、なら馬鹿馬鹿しい話だな

623 :デフォルトの名無しさん:2008/10/27(月) 11:09:57
いいところは一緒になってもいいよ。
プロパティは止めて欲しいけど。
メタなスロットアクセスフックにして欲しい。
move semanticsみたいにね。

624 :デフォルトの名無しさん:2008/10/27(月) 23:03:46
>>623
>メタなスロットアクセスフックにして欲しい。
>move semanticsみたいにね。
kwsk

625 :デフォルトの名無しさん:2008/11/01(土) 01:20:43
最終ドラフトが採択されたそうですよ

ttp://yebo-blog.blogspot.com/2008/10/c0x.html

626 :デフォルトの名無しさん:2008/11/01(土) 03:57:35
結局ラムダのウンコ構文はそのままか…

627 :デフォルトの名無しさん:2008/11/01(土) 10:43:23
まだまだ変更される可能性があるから、いったいどこから最終なんて言葉が出てきたのか疑問。

628 :デフォルトの名無しさん:2008/11/01(土) 11:25:50
completeを最終と訳してしまったんではないかな。
feature-complete、C++0xに入る機能は全てレビュー出来る状態になった
「全て揃った公開ドラフト(complete public draft)」が出来た。
http://herbsutter.wordpress.com/2008/10/28/september-2008-iso-c-standards-meeting-the-draft-has-landed-and-a-new-convener/

629 :デフォルトの名無しさん:2008/11/01(土) 13:58:50
所でconcept gccみたいな産廃じゃないまともな処理系ができるのはいつですか?

630 :デフォルトの名無しさん:2008/11/01(土) 14:11:38
規格が制定されてから五年後ぐらいには、まともな処理系が登場すると思ってるんだけどね。

631 :デフォルトの名無しさん:2008/11/02(日) 00:42:51
>>629
ヒント:自分で作る

632 :デフォルトの名無しさん:2008/11/02(日) 00:45:14
すでにC++のコンパイラは一人の天才の手の負える仕事ではなくなっているわけだが。

633 :デフォルトの名無しさん:2008/11/02(日) 01:03:00
じゃあ発想の逆転で、C++インタープリタを作る。

634 :デフォルトの名無しさん:2008/11/02(日) 01:46:43
LLVM/clang のひとたちががんばってくれないかな...
Apple に買収されたから C++ にはあんまり興味ないのかな。

635 :デフォルトの名無しさん:2008/11/02(日) 02:05:09
>>632
仕様が決まってる言語処理系の実装に天才なんて不要
時間さえあれば経験豊富な凡才一人で完成するだろう

636 :デフォルトの名無しさん:2008/11/02(日) 02:18:37
アホなのかな、この子は?

637 :デフォルトの名無しさん:2008/11/02(日) 02:28:52
アホだな。

638 :デフォルトの名無しさん:2008/11/02(日) 02:43:33
エロい会話禁止

639 :デフォルトの名無しさん:2008/11/02(日) 05:33:25
C言語コンパイラなんか天才なら8時間で作っちゃうよ。
最適化までは無理だが。

640 :デフォルトの名無しさん:2008/11/02(日) 05:37:11
天才じゃないだけあって説得力が無いな。

641 :639:2008/11/02(日) 06:11:01
30年ほど前、3歳のときに実際に作ったからそう言ってるの。
正確にはコンパイラジェネレータを8時間で作って、あとは1ヶ月かけて自動生成したんだけど、
いまどきのパソコンなら数分で完了するよ。

もちろん全ての仕様を網羅してるわけじゃないし基本ライブラリもないけどな。
最初のコンパイラだから。


642 :デフォルトの名無しさん:2008/11/02(日) 06:12:08
もうちょっと面白くならないものかな。

643 :デフォルトの名無しさん:2008/11/02(日) 06:20:10
もうちょっとひねりが欲しかったね
期待外れと言わざるを得ない

644 :639:2008/11/02(日) 06:33:00
>>642-643
つまり天才を否定するわけだな。

645 :デフォルトの名無しさん:2008/11/02(日) 07:42:26
神童も大人になればただの人...どころかただの馬鹿と化してしまったわけですね、わかります。

646 :639:2008/11/02(日) 07:58:08
> 大人になればただの人
いえいえ
完成品を渡して翌日には殴られて記憶喪失ですよ。
しかも殴られた理由が、「次はTRONを1日で完成させろ」って言われて拒否したから。

647 :639:2008/11/02(日) 08:00:56
要するに人身売買暴力団が仕切ってる限り日本に技術は育たない。
パチンコのゴト師だとか中国スパイに暗号技術者が殺されたりしまくってるでしょ。

648 :デフォルトの名無しさん:2008/11/02(日) 11:16:52
久々にやねうらおみたいのを見た

649 :デフォルトの名無しさん:2008/11/02(日) 11:38:33
面白さがみじんもないな

650 :デフォルトの名無しさん:2008/11/02(日) 12:20:06
本人は面白いと思ってるんだから、そっとしておいてやれ

651 :デフォルトの名無しさん:2008/11/02(日) 18:43:11
まともな処理系になるかどうか分からないけど、
VC++2010のCTPに0xの機能が一部入ったようだ
http://blogs.msdn.com/vcblog/archive/2008/10/28/visual-studio-2010-ctp-released.aspx
http://blogs.msdn.com/vcblog/archive/2008/10/28/lambdas-auto-and-static-assert-c-0x-features-in-vc10-part-1.aspx

652 :デフォルトの名無しさん:2008/11/02(日) 20:43:55
メジャーなC++コンパイラの最新版やプレビュー版で実装されてる機能(主なもの)
・GCC (ttp://gcc.gnu.org/projects/cxx0x.html)
rvalue references
variadic templates
initializer lists
static assertions
decltype
strongly typed enum

・Visual C++ (ttp://blogs.msdn.com/vcblog/default.aspx)
lambda
rvalue references
static assertions
auto

・C++Builder (ttp://dn.codegear.com/article/38869)
rvalue references
static assertions
decltype
strongly typed enum
char16_t, char32_t

現時点ではこんなもん?
今後、C++0xが正式に出るまでどれだけ実装されるかな

653 :デフォルトの名無しさん:2008/11/02(日) 20:58:28
一般的とは言えないかもしれないが、

・Comeau C++ ( ttp://www.comeaucomputing.com/43101features.html )
static assertions
auto type specifier
extern template
後、細々したもの。

654 :デフォルトの名無しさん:2008/11/02(日) 21:47:35
一番大事なautoを実装してるのはメジャー所ではVCだけかよ…

655 :デフォルトの名無しさん:2008/11/02(日) 21:51:03
ほかはdecltypeがあるからいいじゃない。

656 :デフォルトの名無しさん:2008/11/02(日) 22:02:15
しかしだね。

auto x = a + b ;
auto iter = v.begin() ;

の変わりに、

decltype(a + b) x = a + b ;
decltype(v.begin()) iter = v.begin() ;

では面倒だぜ。

657 :デフォルトの名無しさん:2008/11/02(日) 22:07:54
#define demi_auto(X, Y) decltype(Y) X = Y;
...こんなマクロが流行るんですね、わかります。

658 :デフォルトの名無しさん:2008/11/02(日) 22:27:39
>>657
既にBOOST_AUTOが切り開いた道

659 :デフォルトの名無しさん:2008/11/02(日) 22:36:53
autoとdecltypeってどっちかが出来たらもう片方もすぐ出来そうだけどな(効率は別にして)
一番目立つ機能だから変なマクロが流行る前に最優先で実装して欲しい

660 :デフォルトの名無しさん:2008/11/02(日) 22:39:51
demi って中二病っぽいね。

661 :デフォルトの名無しさん:2008/11/02(日) 22:41:04
美少女中学生は中二が一番いいよぜ?

662 :657:2008/11/02(日) 22:43:22
>>660
悪かったな。

663 :デフォルトの名無しさん:2008/11/02(日) 22:45:06
decltypeの読み方は
「でっくるたいぷ」
でよろしいですねッ!

664 :デフォルトの名無しさん:2008/11/02(日) 22:45:16
demicup

665 :デフォルトの名無しさん:2008/11/02(日) 23:46:55
>>659
decltypeはsizeofの変種でめっちゃ簡単。
autoは宣言/定義を解釈するコードを書き換える必要がある。
最悪トップダウン/ボトムアップを入れ替える必要あり。


666 :デフォルトの名無しさん:2008/11/03(月) 00:01:35
式の型が分かったら、
そのサイズを計算せずに、
その型のまま返すだけだからね。
sizeof → decltype

667 :デフォルトの名無しさん:2008/11/03(月) 00:51:07
だからVCがベータにもならないのに、いきなりautoをサポートしてるのに驚いたんだがな。
普通decltypeが先だろと。

668 :デフォルトの名無しさん:2008/11/03(月) 01:11:42
GC入るって本当?

669 :デフォルトの名無しさん:2008/11/03(月) 01:13:30
autoはC++/CLIがらみで追加を計画していたと推測してみる。

670 :デフォルトの名無しさん:2008/11/03(月) 01:21:21
C++/CLIの記法というか、MSがここまで評価されるのも珍しいなw

671 :デフォルトの名無しさん:2008/11/03(月) 01:40:42
昔は知らないんだが、VCの方がgccよりもテンプレートのサポートが優れていると、
あのC/C++インタプリタ、CINTのドキュメントに書いてあるんだが。
これはいつ頃書かれたんだろうね。かなり昔の事だと思うが。
ttp://root.cern.ch/viewcvs/trunk/doc/limitati.txt?root=cint

>Template works probably better than most of UNIX based C++ compilers,
>but not as good as Windows based ones.



672 :デフォルトの名無しさん:2008/11/03(月) 02:07:33
そうかautoって難しいのか
auto検出したら内部で657のマクロみたいな置き換えすりゃいいだけかと思ってた

673 :デフォルトの名無しさん:2008/11/03(月) 04:20:31
>>671
確か、VC++が標準対応売りにしだしたのはVS2002の辺りから。
ひどかったのは、VC6からVS2002の間が開き過ぎたせい。

674 :デフォルトの名無しさん:2008/11/03(月) 04:58:18
2002 も結構ひどかったけどな。4年も待ったのにそれかよって感じで。
そして 2003 で一気に改善されて、2002 のアカデミック(無料アップデート対象外)を買った俺涙目。

675 :デフォルトの名無しさん:2008/11/03(月) 05:54:15
4年どころじゃなくない?
VC6って96年だった気が。
C++の標準化の1つの節目が98年なんで、VC6が対応しているわけもないという。

676 :デフォルトの名無しさん:2008/11/03(月) 08:26:56
今もバグフィックスが遅れているから、
boostなんかVC++パッチの嵐だよね。
testが一番通ってるのもVC++なんだがw

メジャー・バージョンアップで適合率トップ、
マイナー・バージョンアップではノロノロで追い抜かれる、
の繰り返しだね。

677 :デフォルトの名無しさん:2008/11/03(月) 09:02:31
まあ開発スタイル的にそうなるのが必然だろ
gccなんかと比べると特に

678 :デフォルトの名無しさん:2008/11/03(月) 09:05:31
開発スタイルよりも、バグであっても、自社のものに依存しているものが多いから、
簡単にフィックスできないって事があるね。

679 :デフォルトの名無しさん:2008/11/03(月) 09:09:46
boost が Comeau 非対応なのはなんか理由があったんだっけ?

680 :デフォルトの名無しさん:2008/11/03(月) 10:48:12
メンテナンスするひとがいないだけでしょ

681 :デフォルトの名無しさん:2008/11/03(月) 12:29:23
conceptを実装するのが一番しんどいイメージが


682 :デフォルトの名無しさん:2008/11/03(月) 13:36:54
現状の型のセマンチクスを変更しないからそうでもないような
あ、conceptとか入れたらlookupの挙動が変わる?


683 :デフォルトの名無しさん:2008/11/03(月) 13:40:55
どこかのサイトに書いてあったけど、
VCはconceptを実装するのに一年はかかるとか

なぜかはわかんね

684 :デフォルトの名無しさん:2008/11/03(月) 15:10:28
一年で実装できたら大したものだ。
五年はかかるぜ。

685 :デフォルトの名無しさん:2008/11/03(月) 15:13:52
俺なら8年で実現してやる

686 :デフォルトの名無しさん:2008/11/03(月) 15:14:49
俺なら3年かけてから挫折する自身あるぜ

687 :デフォルトの名無しさん:2008/11/03(月) 17:34:29
>>683
C++03やC++/CLIが使えなくなるわけじゃないから、
MSにとってそんなに優先順位の高い仕事じゃない。

コンパイラだけでライブラリはそのままじゃアレなんで、
ライブラリやらないといけないし、
独自ライブラリの部分のconcept化をどうするか考えて、
設計しとかないといけない。concept化やらない部分も、
やる部分との整合を考えないといけないから。

g++は規格部分+独自拡張だけだから身軽。

規格に全て書いてあるわけじゃないしね。
Issues Listにあるようなことを実装しながら考えないといけない。


688 :デフォルトの名無しさん:2008/11/03(月) 17:53:09
>>682
現行のコードは変わらないだろ。

689 :デフォルトの名無しさん:2008/11/05(水) 22:35:59
続・VC++10はいろいろ実装されない
ttp://d.hatena.ne.jp/faith_and_brave/20081105/1225875809

最低だ

690 :デフォルトの名無しさん:2008/11/05(水) 22:38:40
initializer_listよお前もか

691 :デフォルトの名無しさん:2008/11/05(水) 22:43:13
>>690
>>689にはinitializer_listのことは書いてない気がするんだが

692 :デフォルトの名無しさん:2008/11/05(水) 22:43:22
中途半端な物を実装されるよりはましじゃないの
まだ仕様の方がちゃんと決まってないのに無茶言うな

693 :デフォルトの名無しさん:2008/11/05(水) 23:00:14
上流設計の遅れを現場に押しつけるのイクナイ!

694 :デフォルトの名無しさん:2008/11/05(水) 23:09:30
下手に実装したら、数年後VC6の悪夢が再びやってくること間違いなしだな。

695 :デフォルトの名無しさん:2008/11/05(水) 23:49:08
VC10の寿命がVC6並に長くなる理由が
ないので、それは大丈夫じゃないかな。

696 :デフォルトの名無しさん:2008/11/06(木) 08:36:45
constructor delegationにmember initialization、
どっちも後から付けやすい機能だから、
次のアップデイトに入るんじゃないか?

697 :デフォルトの名無しさん:2008/11/06(木) 09:35:36
サービスパックでだすような変更じゃないと思うんだが。

698 :デフォルトの名無しさん:2008/11/06(木) 09:40:00
それを考えるのは美少女中学生だな

699 :デフォルトの名無しさん:2008/11/06(木) 19:58:17
本格対応はVC11待ちか・・

700 :デフォルトの名無しさん:2008/11/06(木) 20:44:14
サービスパックで対応するかどうかはまだ分からないとvcblogの人が言っていたな

701 :デフォルトの名無しさん:2008/11/12(水) 22:05:43
【プログラム】C++ 12010年に新バージョン"C++0x"へ - ガベージコレクタなど導入(08/11/12)
http://pc11.2ch.net/test/read.cgi/pcnews/1226494816/

702 :デフォルトの名無しさん:2008/11/12(水) 22:25:39
あれ?ガベージコレクタ入るのん??

703 :デフォルトの名無しさん:2008/11/12(水) 22:43:07
C++0x2EEAか。

704 :デフォルトの名無しさん:2008/11/12(水) 22:54:20
C++0xの0xとは実は16進数のことだったんだよって
公式に言い訳しないの?w

705 :デフォルトの名無しさん:2008/11/12(水) 23:14:17
0xの時点ですでに16進数ぢゃない

706 :デフォルトの名無しさん:2008/11/12(水) 23:54:54
C++0xFFFFFFFF だお

707 :デフォルトの名無しさん:2008/11/13(木) 00:03:23
BOM付けてくれ。

708 :デフォルトの名無しさん:2008/11/13(木) 07:40:03
>>704
それは言い訳というよりは、むしろ愚直な反応というべきかも。

自分達からはその件について何も言わず、誰かに突っ込まれてから
「え? どう考えても16進数でしょ? アナタ何だと思ってたんですか?」
とか返すよりはw

709 :デフォルトの名無しさん:2008/11/13(木) 19:20:17
なんで2010年の10進数で下二桁とってそれを16進数にするんだよw

2010は、16進数で 7DA な。 C++Dx ならまだ納得できるがw

710 :デフォルトの名無しさん:2008/11/13(木) 21:06:44
そんなことよりGC導入って本当?
見送られたんじゃなかったっけ?

711 :デフォルトの名無しさん:2008/11/13(木) 23:03:40
3.7.4.3

712 :デフォルトの名無しさん:2008/11/13(木) 23:17:04
本格的に使えるようになるのは0f年ごろかな

713 :デフォルトの名無しさん:2008/11/14(金) 00:19:50
これってコンパイラは現存するの?

714 :デフォルトの名無しさん:2008/11/14(金) 00:22:57
いったい何をいってるんだ?

715 :デフォルトの名無しさん:2008/11/14(金) 00:42:28
0xコンパイラは絶滅したよ

716 :デフォルトの名無しさん:2008/11/14(金) 10:48:00
未来に戻れ

717 :デフォルトの名無しさん:2008/11/14(金) 11:01:04
0x80xだな
西暦2048〜2063年までには

718 :デフォルトの名無しさん:2008/11/14(金) 21:09:22
もういいよ

719 :デフォルトの名無しさん:2008/11/14(金) 21:28:13
0xネタはもういいよ
もっと面白い話題にしようぜ
ユーザー定義リテラル採用で0b厨歓喜とか

720 :デフォルトの名無しさん:2008/11/14(金) 21:37:48
俺、wwwwで一進数リテラル作ろうと思うんだ…

721 :デフォルトの名無しさん:2008/11/14(金) 23:06:53
1: w
2: ww
3: www

10: wwwwwwwwww

なぁ、0は?

722 :デフォルトの名無しさん:2008/11/14(金) 23:09:43
0: w
1: ww
2: www
3: wwww

723 :デフォルトの名無しさん:2008/11/14(金) 23:12:34
頭悪いな

724 :デフォルトの名無しさん:2008/11/14(金) 23:15:43
素直にwWの二文字を使って2進数にしたほうが読みやすいと思うんだ。
夢はないけど

725 :デフォルトの名無しさん:2008/11/14(金) 23:20:38
文字列リテラルをtemplate引数で受けれたらすごく楽しいことができそうなのに。
template<char c...> vector_c<char,c...> operator "" S();
decltype("hoge"S) → vector_c<char,'h','o','g','e'>
templateで受けられるのは数値(を構成する文字)だけっぽい。残念。
でもこれはできる?
decltype(123S) → vector_c<char,'1','2','3'>

726 :デフォルトの名無しさん:2008/11/14(金) 23:21:45
文字列リテラルをtemplate引数で受けれたらすごく楽しいことができそうなのに。
template<char c...> vector_c<char,c...> operator "" S();
decltype("hoge"S) → vector_c<char,'h','o','g','e'>
templateで受けられるのは数値(を構成する文字)だけっぽい。残念。
でもこれはできる?
decltype(123S) → vector_c<char,'1','2','3'>

727 :デフォルトの名無しさん:2008/11/14(金) 23:23:02
すまん。連投してしまった。

728 :デフォルトの名無しさん:2008/11/15(土) 00:32:17
>>722
よくやった。わかりづらい。
さて次の議題だが、マイナス値はどうする?

729 :デフォルトの名無しさん:2008/11/15(土) 02:20:14
>>728
0: w
1: ww
-1: www
2: wwww
-2: wwwww

730 :デフォルトの名無しさん:2008/11/15(土) 02:28:36
またひとつ変態のためのオモチャができるわけですね

731 :デフォルトの名無しさん:2008/11/15(土) 02:30:25
凶悪すぎるw

732 :デフォルトの名無しさん:2008/11/15(土) 02:43:58
wとWでマイナス2進法を使って表せば任意長の整数が表せるな

733 :デフォルトの名無しさん:2008/11/15(土) 04:31:33
>>728
そこでboost::lambdaでチャーチ数ですよ。

734 :デフォルトの名無しさん:2008/11/15(土) 06:18:25
int w, h;
なんてのがコンパイルエラーになるワケww?

735 :デフォルトの名無しさん:2008/11/15(土) 06:43:35
>>720は軽い気持ちで書いたが、規格では、
 <literal> <user-defined-suffix>
しか許されないから、wwwwがリテラルになるのは無理なんだ。

int operator "" w(const char*p, size_t s) { // 提案ではoperator "w"と書いた。
return s; // '\0'は抜いたサイズが渡される。つまりstrlen(3)と同じ。
}

"www"w // == 3

なら可能。この定義なら ":-)"wでも3だが。


736 :デフォルトの名無しさん:2008/11/15(土) 08:41:16
vで0、wで1を現わすとして2進数を実装するとこんな感じなのか。
"wvvvwvvwvwww"w // == 0x897
Vで2、Wで3を現わすとして4進数とか。
"WwVvwW"w // == 0xd87

737 :デフォルトの名無しさん:2008/11/15(土) 09:42:00
-5 == "WWWW"w
-4 == "WWww"w
-3 == "WWwW"w
-2 == "Ww"w
-1 == "WW"w
#0 == "w"w
+1 == "W"w
+2 == "WWw"w
+3 == "WWW"w
+4 == "Www"w
+5 == "WwW"w

738 :デフォルトの名無しさん:2008/11/15(土) 10:06:28
-2進数採用で負数も統一的に扱えるぜ
0  -> ""w
1  -> "W"w
-2 -> "Ww"w
-1 -> "WW"w
4  -> "Www"w
5  -> "WwW"w
2  -> "WWw"w
3  -> "WWW"w


739 :デフォルトの名無しさん:2008/11/15(土) 10:19:23
-2進数とかワロスww
この話題に触れたのはクヌース先生の説明を読んで以来だぜw

740 :デフォルトの名無しさん:2008/11/15(土) 10:42:35
どんどんわかりづらくなってるwww GJ!w

741 :デフォルトの名無しさん:2008/11/15(土) 11:01:48
インタプリタ書けば別言語を埋め込むことも出来るよな
"+++++++++[>++++++++>+++++++++++>+++++<<<-]>.>++.+++++++..+++.>-.\
------------.<++++++++.--------.+++.------.--------.>+."BF
=>"Hello world!"

夢が広がりんぐ

742 :デフォルトの名無しさん:2008/11/15(土) 11:05:53
コンパイルタイムに評価できないと意味なさげ

743 :デフォルトの名無しさん:2008/11/15(土) 11:16:43
仕様全然知らんのだけど、
ローマ数字をコンパイルタイムで数値変換とかは無理?

744 :デフォルトの名無しさん:2008/11/15(土) 11:19:15
constexprって再帰もループもできないんだろ?

745 :デフォルトの名無しさん:2008/11/15(土) 11:21:08
引数にコンパイル時定数しか取らないんだからあらかじめ計算できそうなもんだけどな
operator""の中でグローバル変数使う可能性があるから無理なんだろうか

746 :デフォルトの名無しさん:2008/11/15(土) 11:23:52
>>744
再帰にしない代わりに同じ内容の関数をたくさんつくれば、
有限ステップの計算ならできるんじゃね。

747 :デフォルトの名無しさん:2008/11/15(土) 13:13:28
boost::protoを使ってbrainfuckを実装する作業に戻るんだ

748 :デフォルトの名無しさん:2008/11/15(土) 14:41:54
>>741
operator "" BF("abcdef")は、
operator "" BF<'a', 'b', 'c', 'd', 'e', 'f'>()と等価だから、
必要な分だけ特殊化しておけば大丈夫。

749 :デフォルトの名無しさん:2008/11/15(土) 15:19:29
C++厨はすぐにTMPしようとするから困る。

750 :デフォルトの名無しさん:2008/11/15(土) 15:23:50
>>749
素直にTMP厨と呼べば?

751 :デフォルトの名無しさん:2008/11/15(土) 15:26:01
C++はD言語の爪の垢でも煎じて飲めば良いのになぁ>コンパイル時文字列操作

752 :デフォルトの名無しさん:2008/11/15(土) 15:48:44
今度はD厨か。

753 :デフォルトの名無しさん:2008/11/15(土) 15:57:39
Dといえば以前はDelphiだったのにな・・・

754 :デフォルトの名無しさん:2008/11/15(土) 18:48:31
D厨は関数のコンパイル時実行で無限再起でも起こしてコンパイラを落としていればいい。

755 :デフォルトの名無しさん:2008/11/15(土) 19:41:29
コンパイルタイム無限再帰で悩むのはC++、
コンパイルタイム無限ループで悩むのがD。

756 :デフォルトの名無しさん:2008/11/15(土) 19:54:33
そろそろ文字列mixinを導入して本格的にマクロを捨てようじゃないか

757 :デフォルトの名無しさん:2008/11/16(日) 00:13:59
importディレクティブマダー?

758 :デフォルトの名無しさん:2008/11/19(水) 18:34:26
mixinなんてD臭いキーワード嫌だ

759 :デフォルトの名無しさん:2008/11/19(水) 20:36:27
late binding指向のmixinなんかC++に入るわけがない。

760 :デフォルトの名無しさん:2008/11/21(金) 11:50:31
>>19

761 :デフォルトの名無しさん:2008/11/21(金) 17:57:57
後置単項の+はC++の演算子じゃないから>>19は構文エラー

762 :デフォルトの名無しさん:2008/11/22(土) 01:13:42
後置+++はC+++の演算子だよ。

763 :デフォルトの名無しさん:2008/11/22(土) 22:15:49
C# は # という演算子を作るべきだった。

764 :デフォルトの名無しさん:2008/11/22(土) 22:17:46
C や C++ にすらあるというのに

765 :デフォルトの名無しさん:2008/11/22(土) 22:55:25
でもC/C++の#演算子は前置単項だからな

766 :デフォルトの名無しさん:2008/11/22(土) 22:57:28
使ったことないな

767 :デフォルトの名無しさん:2008/11/22(土) 23:01:27
ASSERT のようなマクロを使う時に
引数をエラーメッセージに表示する時とかによく使う。

768 :デフォルトの名無しさん:2008/11/22(土) 23:02:28
使う時に、じゃなくて、作る時に、だ。

769 :デフォルトの名無しさん:2008/11/22(土) 23:28:01
プリプロセッサ演算子だな

770 :デフォルトの名無しさん:2008/11/23(日) 21:58:51
ぷろぷりせっさ

771 :デフォルトの名無しさん:2008/11/24(月) 09:12:03
ぷるぷるそっさ と空目

772 :デフォルトの名無しさん:2008/11/24(月) 19:19:49
スレッドとメモリモデルに関してはどこを探せばいいですか
C++0xで決まるのかどうかもわかってないレベルですが

773 :デフォルトの名無しさん:2008/11/24(月) 19:20:31
>>772 >>1

774 :デフォルトの名無しさん:2008/11/24(月) 21:24:43
C++0xのラムダ式は再帰できますか?

775 :デフォルトの名無しさん:2008/11/24(月) 21:30:15
C++2003でも不動点演算子となるような関数オブジェクトが定義できるんで
こういうのを0xでも実装すればかのうだと思います

776 :デフォルトの名無しさん:2008/11/25(火) 10:09:21
>>774
VC++blogに0xのラムダを使った再帰の例が出てたよ

777 :デフォルトの名無しさん:2008/11/30(日) 11:56:57
                    /    ..::::::...ヾ,-┐:::::..  ヽ、
                   /::::::::    :::::::::::::::..ヽ|、::::::::...  ヽ、
                 / ::::::::     、:::::::::::::::::...ヽ::::::::::::..  ヽ
                 / :::::   人、 | ヽ、_:::::::::::::: |:::::::::::::.  |
            ,イ´   |  :::ト、 |  `'-,r‐=,、ヽ、 ::: |::::::::::::::  |
          rv' l´    ヽ、:.| r-、     p ヽ `l ,ヘ:::::::::::::::::   |
           | |  |     ヾヽ、 ハ     ヾ_ノ .| |' .|::::::::::::::::::  |      ラムダっちゃ♥
'´ ̄ ̄`ヽ、、_   | |  |       ヽ、l ゞ    ー   | レ':::::::::::::::::::  |
 ̄      ` r-L l  ',        |` 、       ,' |::::::::::::::::::::::  |
       _rヾニ `ヽ ',       ヽ、 r‐-ァ   /::|::::::::::::::::::::::::..  |
       ヾゝイ´ ,/  .',          ヽ、ゝ' _,.-;ノ:: |::::::::::::   ::::.. |
:..         ト ´ /....  'ヽ,、_     >r' /:: /:::::::::::::     :::  |
         〉  .|:::::::::::......    `ー-‐'´,-/ /::::: / `ヽ、:::        |
:....    .:::::::::::|   |:::::::::::::::::,、-r―'''´ ̄ ,.-‐'´:::. /   |:::::....   .  |
::::::::::::::::::::::::::::::::|   ',:::::::::::::∧ヾ V/―/:::::::::::  /     |:::::::::::.......:::.  |
::::::::::::::::::::::::::::::::|    ',:::::::::::ト kl /三/::::::::::  /      ,':::::::::::::::::::::::  |
::::::::::::::::::::::::::::::::|    ',:::::::::|ヾヾ|、 /:::::::::   ,イ      ,':::::::::::::::::::::::::  | |
::::::::::::::::::::::::::::::::|    ',/ヽ__ヾ、|::::::   ∧/      /::::::::::::::::::::::::::  |.|.|
::::::::::::::::::::::::::::::::',    !  /    ヾ:: ∠__/      /::::::::::::::::::::::::::  | ||

778 :デフォルトの名無しさん:2008/11/30(日) 12:04:27
N2554: The Scoped Allocator Model (Rev 2)
ってあるけど、これ地味にいいね

組み込みでもSTLコンテナとか使いやすくなる予感

779 :デフォルトの名無しさん:2008/11/30(日) 23:24:37
そもそも組み込みではSTL自体が提供されていないことも珍しくなく
STLPortがコンパイル通るのも夢のまた夢だったり

780 :デフォルトの名無しさん:2008/12/01(月) 00:18:37
>>778
メモリアロケーション関係はいいのが多いね。
>>779
Embedded C++(笑)


781 :デフォルトの名無しさん:2008/12/01(月) 18:32:39
組み込みって標準入出力ないんでしょ?
cin,coutとかどうするんだろ

782 :デフォルトの名無しさん:2008/12/01(月) 18:38:57
そういうとこでは<iostream>などが無くても良いことになっている。
フリースタンディングとかでググれ。

783 :デフォルトの名無しさん:2008/12/01(月) 21:19:00
>>781
そういうことは初心者スレで

784 :デフォルトの名無しさん:2008/12/07(日) 01:44:06
C++のISO 標準仕様の文書を無料で手に入れたいんだけど、転がってるところ知らない?
JIS のHPにいったらPDFで閲覧できたんだが、こいつはスキャナかなんかで読み込んだのを
PDF化したものらしく、ろくに検索もできないんで、ほとんど使えない。

785 :デフォルトの名無しさん:2008/12/07(日) 01:56:24
draft + 規格名 + filetype:pdfでググって。

786 :デフォルトの名無しさん:2008/12/07(日) 02:09:00
>>784
ありゃひどいよな…。
検索できない電子文書とかただのバイト列だわ。

787 :デフォルトの名無しさん:2008/12/07(日) 02:16:54
無料じゃ手に入らない。金を払え。

788 :デフォルトの名無しさん:2008/12/07(日) 02:18:44
>>784
なんで ISO の規格が見たくて JIS に取りに行ってんだ?
ISO のやつなら >1 のページにあるドラフトと Issue リスト見ればおおかた情報は揃うし、
検索もできる。

789 :デフォルトの名無しさん:2008/12/07(日) 04:29:07
だいたいJIS規格のアレをまともに読んでいる奴はこの世にいるのか?
訳した奴でさえ、多分意味分かってないんじゃないのかアレ。

790 :デフォルトの名無しさん:2008/12/07(日) 06:26:03
何で売っているものを無料で手に入れようと思うんだ?

791 :デフォルトの名無しさん:2008/12/07(日) 06:28:42
この御時世に規格書を売るってのが変だと思うんだが。
C++0xの規格もやっぱり有料なのかな。

792 :デフォルトの名無しさん:2008/12/07(日) 08:06:29
>791
公的標準化機関の制定する規格書で無料のものの方が少ないんじゃね?
運営費も必要だし。全額寄付だと公平性に問題がって話になるし、全額税金だと
ある程度は受益者負担でって話が出てくると思う。

と思ったけど結構高いな、おい。
現行 C++ で JIS だと PDF がまだないけど、冊子で \17,325。PDF できても同額になると思われる。
ISO だと CHF 370,00 で 3万弱か?
ANSI だと $30.00 なのに。
一時期 $15 で売ってたはずでその時に買ったから高いという意識があんまりなかった。

793 :デフォルトの名無しさん:2008/12/07(日) 11:28:46
JISの規格票の値段はページ数に比例します。
恨むならでかい規格作った方を恨んでください。

794 :デフォルトの名無しさん:2008/12/07(日) 12:38:07
CHFてどこの国の通貨単位か当てっこしようぜ。
おれはチャイニーズフランだと思う。


795 :デフォルトの名無しさん:2008/12/07(日) 12:58:53
>>794
Confoederatio Helvetia Franc
コンピュータ技術者ならお馴染みのフォント名が実はあの山国のラテン語名だったのね。

796 :デフォルトの名無しさん:2008/12/07(日) 16:16:41
>>792
ISOってC#とかは無償公開してたよなぁと思って調べてみたら
C++は今のところTR1だけみたいね。

ttp://standards.iso.org/ittf/PubliclyAvailableStandards/index.html
ttp://standards.iso.org/ittf/PubliclyAvailableStandards/c043351_ISO_IEC_TR_18015_2006(E).zip

雰囲気、C++0xもFreely Available Standardsに入るんじゃなかろうか。

797 :デフォルトの名無しさん:2008/12/07(日) 16:21:06
すまん。TR1じゃなくてTechnical Report on C++ Performanceだった。


798 :デフォルトの名無しさん:2008/12/07(日) 19:15:35
>>797
そいつはずっと前から >1 のリンク先でダウンロードできる。

799 :デフォルトの名無しさん:2008/12/07(日) 22:13:11
C++0x の初期ドラフトは C++03 に近いからそれでいいんじゃね。

800 :デフォルトの名無しさん:2008/12/07(日) 22:23:32
みんなちゃんと金だして買えよ。俺はISO版とANSI版とJIS版を買ったぞ。
そこまで揃えろとは言わんけど、せめて一つぐらい買ってやれよ。
こんなC++の新規格追いかけてるようなプログラマなんだから、みんないい給料貰ってんだろ?

801 :デフォルトの名無しさん:2008/12/07(日) 22:45:17
そもそもその金は誰の懐に入るの?

802 :デフォルトの名無しさん:2008/12/07(日) 23:43:29
>>800
ISOとANSI、二つ必要?

803 :802:2008/12/07(日) 23:45:19
ちなみに俺はISOの奴、
INCITS+ISO+IEC+14882-2003.pdf
だけ持ってる。古いのもあるが、最新はこれだけ。

804 :800:2008/12/08(月) 05:43:34
>>801
それぞれの規格をとりまとめてる機関の運営費になってるハズ。
>>802
内容的には同じだから要らない。
ISOのほうが先行して発売してたから買っちゃったけどISO版は一番高いくせに糞。
ttp://ml.tietew.jp/cppll/cppll/article/10268

805 :デフォルトの名無しさん:2008/12/10(水) 06:50:05
g++ 4.4にautoの実装と新しい関数宣言の構文来てるね。
あまり使い方わかってないけど、適当に4.4の新機能を使ってみた。
#include <iostream>
#include <vector>

template <typename T> auto f(T x) -> decltype(x*x)
{
  return x*x;
}

int main ()
{
  std::vector<int> x{1, 2, 3, 4, 5, 6, 7, 8, 9};

  for (auto i = x.begin(); i != x.end(); ++i)
    std::cout << f(*i) << std::endl;
  return 0;
}

出力
1
4
9
16
25
36
49
64
81

806 :デフォルトの名無しさん:2008/12/10(水) 07:47:42
やっぱりきもいな。

Dだと、
 typeof(T*T) f(T)(T x) { return x*x; }
 auto f(T)(T x) { return x*x; }
でいけるから、C++ももうちょっと頑張って欲しかったのに。

807 :デフォルトの名無しさん:2008/12/10(水) 08:01:47
しばらく*iな理由を考え込んでしまった……

808 :デフォルトの名無しさん:2008/12/10(水) 19:32:33
>>803
それANSIじゃないの?
ここで買えるやつだよね。

ttp://www.techstreet.com/cgi-bin/detail?product_id=1143945

購入検討中

809 :デフォルトの名無しさん:2008/12/11(木) 06:39:50
>>807
iがイテレータだからだよな
パッと見だと分からないね

810 :デフォルトの名無しさん:2008/12/11(木) 08:31:16
んなわけねーべw > 考える、分からない

811 :デフォルトの名無しさん:2008/12/13(土) 03:55:43
インクリメントされるint型がポインタで渡されてる(´・ω・`)???
って、一瞬なるよ。

812 :デフォルトの名無しさん:2008/12/13(土) 08:09:01
iじゃなくてitにでもしておけばいいな。

813 :デフォルトの名無しさん:2008/12/13(土) 08:29:41
>>811
ならねえよ。

concept map InputIterator<int> {
typedef int value type;
typedef int reference;
typedef int* pointer;
typedef int difference type;
int operator* (int x) { return x; }
};

でさえ全然普通。begin(), end(), *iでiterだなって分かる。

814 :デフォルトの名無しさん:2008/12/13(土) 10:40:45
そんなのできないだろ
コンセプトマップ貼り付けられる組み込み型ってポインタだけでしょ?

815 :デフォルトの名無しさん:2008/12/13(土) 11:25:20
>>805はイテレータの名前がiになってるから違和感あるんだな
あまりイテレータをiって名付けてるソースはないと思う
itとかiteとかiterとかならよく見るが

>>814
んなこたない。組み込み整数型も関数型もいけるはず。

816 :デフォルトの名無しさん:2008/12/13(土) 11:36:51
そもそもループ変数がiなのはiteratorから来ているんじゃないの?

817 :デフォルトの名無しさん:2008/12/13(土) 11:37:56
intだろ……、と思わずマジレス。

818 :デフォルトの名無しさん:2008/12/13(土) 11:40:12
indexじゃなかったか?

819 :デフォルトの名無しさん:2008/12/13(土) 11:40:52
intだろうとiteratorだろうとループ変数で使うならiだなぁ
スコープが狭くて使用頻度が高ければ1文字は基本ですよねー

820 :デフォルトの名無しさん:2008/12/13(土) 12:30:30
オッサンがマジレスしちゃうぞー

821 :デフォルトの名無しさん:2008/12/13(土) 14:04:54
数学の積分で使うiはindex?

どっちにしてもiとかjとかnという変数を見たら整数だと思うよ
FORTRANerじゃないけど

822 :デフォルトの名無しさん:2008/12/13(土) 14:13:26
よくわからないけどintegralでは?

823 :デフォルトの名無しさん:2008/12/13(土) 14:16:34
頻度が高いからこそ二文字変数にしてインクリメンタルサーチで引っ掛けやすくすると言うこともあるが。

824 :デフォルトの名無しさん:2008/12/13(土) 14:55:42
>>816
iotaからきてるはず。
だからC++0xには
void iota(Iter first, Iter last, T value)
なんて関数が<numeric>に入るんでしょ。


825 :デフォルトの名無しさん:2008/12/13(土) 15:03:31
C++スレ見てたから、なぜitoaが?
卵から鶏が・・・とか思ってしまったんだぜ

826 :デフォルトの名無しさん:2008/12/13(土) 20:52:23
え、素直に、FORTRAN の最初の整数値変数のiから来てるんだと思っていたが
算術周りは後付でしょ

827 :デフォルトの名無しさん:2008/12/13(土) 20:59:50
大本は数学で行列や数列の要素を書くのに下付き文字でa_ijとか書いてたのだろ
1800年代からの習慣だ

828 :デフォルトの名無しさん:2008/12/13(土) 21:06:31
それはそんなに古くない習慣だと思うが

829 :デフォルトの名無しさん:2008/12/14(日) 01:56:50
>>814
ConceptG++で動いているコードだよ。

830 :デフォルトの名無しさん:2008/12/17(水) 01:27:12
ユーザー定義リテラルのサフィックスに使えるのって'_'+小文字で始まるものだけ、で合ってる?
_で始まらないのサフィックスは予約されてるし、identifierには違いないから
'_'+大文字や__でを含むのもダメなんだよね?

831 :デフォルトの名無しさん:2008/12/17(水) 01:51:40
'_'+小文字の識別子はファイルスコープで予約されているのだが。

832 :デフォルトの名無しさん:2008/12/17(水) 02:03:03
>>830
literal operatorかliteral operator templateとして定義されている識別子ならOK
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2800.pdf

833 :デフォルトの名無しさん:2008/12/17(水) 17:24:49
>>831
嘘はよくないな

834 :デフォルトの名無しさん:2008/12/24(水) 18:00:24
コンセプトよくわかんないから質問していい?

concept B<typename T> {/*...*/}

concept D1<typename T> : B<T> {}
concept D2<typename T>{ requires B<T>; }

D1とD2って何が違うの?

835 :デフォルトの名無しさん:2008/12/24(水) 19:18:36
refinementのばやい、concept_mapを定義すると、
refine関係のあるconceptでも、concept_mapが自動生成されます。


836 :デフォルトの名無しさん:2008/12/24(水) 20:01:36
つまり、D1の場合は

concept_map D1<Foo>{/*...*/}

だけでconcept_map B<Foo>も自動で作られるけど
D2の場合はそうならない

で合ってる?
てことはauto conceptの場合は全く同じでいいのかな

837 :デフォルトの名無しさん:2008/12/24(水) 21:45:15
そうです。auto(以下りやくのところは節立てして書いてあります。
implict conceptがどうしたこうしたと。
仕様書から読み取るのは結構大変なんで、
六人記名の紹介論文を熟読することをお勧めします。
とはいえ、酔っぱらってて、チャックしないで書いてるから間違ってたらゴメンネ。
上のは14.9.6だとあてずっぽうで書いときますw

838 :デフォルトの名無しさん:2008/12/25(木) 03:18:02
http://d.hatena.ne.jp/faith_and_brave/20081224/1230109605
"JP-29. 例外クラスのUnicode対応" について。

現状の std::exception::what() に "Remarks" として以下の記述がある。
> The message may be a null-terminated multibyte string (17.5.3.2.4.3),
> suitable for conversion and display as a wstring (21.2, 22.2.1.4).
ちなみにこの記述は C++ 2003 でも今のドラフトでも変わってない。

Unicode とか関係無しに、ここの "may be" を "must be" にして、
"conversion" の具体的な方法を示してもらえばそれでいいような気がする。

たとえば mbstowcs() + std::wstring(wchar_t*) とか。それがあれば、
投げる側はその変換に合うように文字列を std::string に変換してやる
ことができる。

っていうか、そうしないと std::cerr << e.what() のようなごく自然なコードが
不正となってしまう。

839 :デフォルトの名無しさん:2008/12/25(木) 08:55:41
今の記述で十分。
m17nしたければgettext()使えばいい。

840 :デフォルトの名無しさん:2008/12/25(木) 11:34:01
>>839
たとえばファイルが開けなかったときの例外を表示するときには開こうとしたファイル名が
表示されてほしいんだけど、投げる側で what() にファイル名が入るようにしてたら
gettext() に支障が出るんじゃない?

841 :デフォルトの名無しさん:2008/12/25(木) 20:28:14
>>838
この人らは何者なの?
最終ドラフトにこんなに要望したって通るわけないだろ
これ以上禿に日本の悪い印象与えるのやめて

842 :デフォルトの名無しさん:2008/12/25(木) 21:31:50
誤字の訂正とか真面目な部分もあるけど、
std::string、char*をUTF-8前提にしろとか言った奴は頭悪すぎ。
>>840
そういうことをwhat()に押し付けないで。

843 :デフォルトの名無しさん:2008/12/25(木) 21:51:16
>>841
機械振興会館でやってるから、情報規格調査会のWGに集まった人たち、って
ところだね。なんか変な香具師が混じったんだろ。

844 :デフォルトの名無しさん:2008/12/25(木) 23:07:00
what 内で表示すればいいんじゃね。

845 :デフォルトの名無しさん:2008/12/25(木) 23:51:41
>>841
C++0xに関する作業はもうISO/IEC JTC1のWGへ移ってる。
ここでは上がってきたドラフトに対して各国の代表 (national bodies) が
コメントを出し、それを受けて手直しして、最終版 (FCD) を作り上げる。
そしてそれを national bodies による投票に掛けて、通ればISO/IECの規格として成立する。

日本は情報処理学会というところがnational bodyとして出席していて、
>>838はそこの関係者。

846 :デフォルトの名無しさん:2008/12/26(金) 00:02:35
そうか、正式な日本代表なのか

あんなのが日本代表の正式な意見書になるのか…

847 :デフォルトの名無しさん:2008/12/26(金) 00:34:41
ここの5.4.7に名簿が
ttp://www.itscj.ipsj.or.jp/meibo/MeiboIndex.html

848 :デフォルトの名無しさん:2008/12/26(金) 00:37:52
最終版はちゃんとまとめられると思うよ。
国際規格に対するJISの貢献は結構大きいよ。
本家WGに参加する日本人はまだ少ないけれど。

849 :デフォルトの名無しさん:2008/12/26(金) 00:39:22
>>842
「そういうこと」って何?
捜査対象ファイル名の表示を what() でやらないとして、ほかにどうするの?

850 :デフォルトの名無しさん:2008/12/26(金) 00:45:44
C系の言語規格の立場としては、
そういうのはローカルプラットフォームの規約や
コーディング規約でやってねってことになっているんじゃない?
少なくともMBSについては。
// WCSだとwstringパスに対するfstream APIが増えたけれど。


851 :デフォルトの名無しさん:2008/12/26(金) 00:56:44
>>850
完全にアプリ側だけで使うものならそれでもいいんだろうけど、
std::exception は標準の例外として bad_alloc やら ios::failure やら
stdexcept のやつらを同じ方法で扱うためのインターフェースとなるべきだろう。

そうでなければ、毎回 bad_alloc, ios::failure, ... の catch を分けて書け、とでも言うの?

852 :デフォルトの名無しさん:2008/12/26(金) 01:05:51
>>842
無理だろjkって空気だったよ、あの場でもさすがに。結局、コメントには残ったみたいだけど。

853 :デフォルトの名無しさん:2008/12/26(金) 01:17:17
wchar_t と Unicode がごっちゃになってる Windows オンリーな人なんだろうなと思う。

854 :デフォルトの名無しさん:2008/12/26(金) 01:45:01
>>851
std::stringにマルチバイドキャラクターストリング入れて悪いわけじゃないから、
やりたい奴は勝手にやればいい。ただそれだけ。


855 :デフォルトの名無しさん:2008/12/26(金) 01:56:50
>>854
だからさ、それじゃ「std::exception の what() を表示する」っていうコードが書けないじゃん。

今のドラフトじゃ
throw std::runtime_error("実行時エラー");
throw std::runtime_error(u8"実行時エラー");
の両方が黙ってコンパイルできてしまうし >838 にある "may be ..." にどちらも
違反しない。複数のライブラリを使ってたりすれば同じプログラム内で両方使われてる
可能性だって出てくる。 catch (std::exception const&) {...} 中でどうすりゃいいんだよ、
って話。

856 :デフォルトの名無しさん:2008/12/26(金) 02:01:02
>>855
標準の枠内で書きたければそうすればいいし、
枠からはみ出る必要があればそうすればいい。

> だからさ、それじゃ「std::exception の what() を表示する」っていうコードが書けないじゃん。

問題ない。表示されるかどうかは、
取り出してからどう扱うかと環境によるってだけ。



857 :デフォルトの名無しさん:2008/12/26(金) 02:07:43
>>856
> 標準の枠内で書きたければそうすればいいし、

「標準の枠内で書く」ということがどういうことか定まらないのが問題なんだろ。

> 問題ない。表示されるかどうかは、
> 取り出してからどう扱うかと環境によるってだけ。

「○○だと困る」って話をしてるのに「問題ない。○○ってだけ」とか、もうね。

858 :デフォルトの名無しさん:2008/12/26(金) 02:10:43
定まってる。
charには何を入れてもいい。


859 :デフォルトの名無しさん:2008/12/26(金) 02:17:20
>>858
「何を入れてもいい char の列を表示するコード」、ってバイナリダンプとか?

860 :デフォルトの名無しさん:2008/12/26(金) 02:20:07
>>838
localeとfacetで出来るよ。


861 :デフォルトの名無しさん:2008/12/26(金) 06:31:00
>>842
「真面目な部分」として「誤字の訂正」をあげるようなヤツに「頭悪すぎ」とか言われたくないなw

862 :デフォルトの名無しさん:2008/12/26(金) 07:31:16
変なのが沸いてるな・・・

863 :デフォルトの名無しさん:2008/12/26(金) 08:49:40
what()のメッセージに付記入れるなら__func__にも付記欲しいな
人が読めるようにとかオーバーロードやテンプレート実体化ごとに区別付くようにとか
縛りがないとどうせマングリング名になるだろ

864 :デフォルトの名無しさん:2008/12/26(金) 17:09:44
和製の処理系とか見たこと無いんだけど。
JISにおけるC++規格って誰が使うの?

865 :デフォルトの名無しさん:2008/12/26(金) 17:17:38
富士通が処理系出してたよ。
templateも結構まともだった。

866 :デフォルトの名無しさん:2008/12/26(金) 17:33:23
日立もつくってますね。
boostもサポートされているようです。


867 :デフォルトの名無しさん:2008/12/26(金) 17:45:13
ほぇ〜、意外。
ぶっちゃけGCCからフロントエンドパクればいいだけじゃんとは思うんだけど。
なんか自作する理由があんだね。

868 :デフォルトの名無しさん:2008/12/26(金) 17:55:49
大型やっているところなんでも揃えとかないといけないから。
あれがないって事になると顧客を失う。

869 :デフォルトの名無しさん:2008/12/27(土) 00:40:53
http://pc11.2ch.net/test/read.cgi/tech/1219719677/
こっちで話題になってるんですが"default constructed"って何なんでしょう
詳しい人いませんか

870 :デフォルトの名無しさん:2008/12/27(土) 00:46:57
default constructorによるconstructのことだろ。

871 :デフォルトの名無しさん:2008/12/27(土) 01:01:42
クラスはそれでいいんですけど
"default constructed"された非クラス型が
value initializedされるのかdefault initializedされるのかが問題なんです

872 :デフォルトの名無しさん:2008/12/27(土) 01:58:58
POD 型の場合、0 初期化されるの? されないの? って問題だな。

873 :デフォルトの名無しさん:2008/12/27(土) 02:51:38
これってさぁ、基底クラスにObjectは採用してくれるの?

874 :デフォルトの名無しさん:2008/12/27(土) 02:52:54
JavaのObjectクラスみたいな全クラスの暗黙の基底クラス?
するわけがない

875 :デフォルトの名無しさん:2008/12/27(土) 08:59:56
>>864
あ、NECもSXシリーズのためにコンパイラ作ってましたね。
スパコンのベンダはだいたいC++のコンパイラを作っている、と。


876 :デフォルトの名無しさん:2008/12/27(土) 10:16:00
>>873
void*でエエがな。リフレクションならtype_infoを継承してリフレクション情報
を混ぜたクラスをtypeidで返すように各ベンダがすればいいだけだし。
関数テーブルが標準で乗るような設計はC++の理念に反する。

877 :デフォルトの名無しさん:2008/12/27(土) 14:53:09
>875
SXC++はtemplateが哀しいほど使えないぞ
complex<>も遅くて話にならないし

878 :デフォルトの名無しさん:2008/12/27(土) 15:12:12
Objectが基底クラスじゃないからライブラリや設計が面倒くさいのに・・・
templateで無理やりぶん回すこともなくなるのに

879 :デフォルトの名無しさん:2008/12/27(土) 15:26:31
>>878
あんまりプログラミング言語のこと知らないんだね。

880 :デフォルトの名無しさん:2008/12/27(土) 15:43:41
>>878
キミObject型を何につかってんの?
現C++はSmalltalkやObjective-Cの様にObjectクラスが
存在しないとオブジェクト生成すらままならないという訳じゃないんだけど。

881 :デフォルトの名無しさん:2008/12/27(土) 15:49:43
むしろC++はノイマン型アーキテクチャを直接叩ける言語にしては、
異常なくらいプリミティブ型へのサポートも厚い言語。
登場した時は恐れ入りました感があった。

今流行りの言語ではプリミティブ型コンテナの
ボクシング/アンボクシングが盛んだけど、
そのきっかけの一つになったと思っている。

C++は今のやり方を貫いて欲しい。

>>880
Objective-Cは、プリミティブ型のことは知りません、
Cで取り扱ってくださいって態度。

882 :デフォルトの名無しさん:2008/12/27(土) 15:49:46
Smalltalk ならともかく、他の言語で単一継承モデルを採用している理由はなんなのかな
多重継承時のトラブル対策のみ?

883 :デフォルトの名無しさん:2008/12/27(土) 15:59:16
interface/protocol があると多重継承はあんまり要らない気がする

884 :デフォルトの名無しさん:2008/12/27(土) 16:01:19
>>881
SymbianやAndroidなど組み込み機器用のOOPとして現役だしね。
>>878みたいなことしても、客が逃げていくだけで何のメリットもない。

>>882
実装継承以外がinterface, trait, conceptになっただけで、
今は事実上多重継承ばかりかと。

885 :デフォルトの名無しさん:2008/12/27(土) 16:10:08
てか、Objective-Cとか知ってる人間からすると、
実装無しで継承って(笑)と思ってしまう。
interfaceなんかはあくまで、型システムによって機能しなくなった
メッセージングを補完する為だけの苦肉の策で、本来の継承とはかけ離れたよに思う。


886 :デフォルトの名無しさん:2008/12/27(土) 16:15:54
>>884
Mixinは実装多重継承との関わりがあると言っていいんじゃないの?

887 :デフォルトの名無しさん:2008/12/27(土) 16:16:12
>>872
されない
struct foo {
 char bar[1000000]
}
が自動的に初期化されたらいやだろう
デフォルトコンストラクトは文字通り「何もしない」ので不定値が入る

888 :デフォルトの名無しさん:2008/12/27(土) 17:05:41
Objective-Cとか知ってる人間(笑)

889 :デフォルトの名無しさん:2008/12/27(土) 17:09:20
>>882
多重継承は仮想関数テーブルが複雑になって実装が面倒だからじゃね?

890 :デフォルトの名無しさん:2008/12/27(土) 17:14:00
>>888
そうか?見識が広がっていいと思うぞ。
C++とは真逆の言語だからね。



891 :デフォルトの名無しさん:2008/12/27(土) 17:38:32
>>889
invokeinterfaceやmixinでも同じだよ。

892 :デフォルトの名無しさん:2008/12/27(土) 18:00:09
>>891
問題は仮想継承辺りの扱いかもね。

893 :デフォルトの名無しさん:2008/12/27(土) 18:04:36
いい加減exportの扱いどうにかならんか?
0xなるんだから委員会も、もう少し強制するなりしろや。
コンパイル速度が遅くてかなわんぞ。

894 :デフォルトの名無しさん:2008/12/27(土) 18:10:27
exportは実装に見合うだけの利益はないよ。
コンパイル時間が一割ぐらい早くなるかもしれんが、exportによって、
今までできなかったことができるようになるとか、そういうことは一切ないから。

895 :875:2008/12/27(土) 18:35:24
>>877
実際に使ったことはないのですがw
情報ありがとうございます。
まあ、日立、富士通、NECといったスパコンベンダは
C++コンパイラを作っているのは事実、ということで。


896 :デフォルトの名無しさん:2008/12/27(土) 18:58:54
>>887
引用スレに書かれている通り、foo() の書き方だと0初期化だよ。その互換性の話をしているんだと思う。

897 :デフォルトの名無しさん:2008/12/27(土) 19:26:09
>>894
 そんなにみみっちいかなぁ。
 GCCのpragmaでやってるような、翻訳単位ごとにテンプレートのインスタンスが
発生するという事態は改善できるだろ。それから、ヘッダーの見通しもよくなるし、
STLの内部実相の為にベンダーが用意した__imp__comperなんて関数も取り込まなくて
済むようになる。(ファイルスコープが効く)
 まぁ、実装が一つしか無いから机上の空論ではあるけどね。

898 :デフォルトの名無しさん:2008/12/28(日) 19:34:04
class Parent
{
public:
int Method(int);
};
class Child:Parent
{
public:
using Parent::Method;
};
って感じのprivate継承とか
static using
{
 struct
 {
  int a,b;
 };
 char c:
};
みたいな無名共同体。
int (Class::*member)=0;
の様なメンバー変数に対するポインタ(メンバー関数では無い)
なんて、使ってる人いる?むしろ使ったことある人いるか?

899 :デフォルトの名無しさん:2008/12/28(日) 19:38:46
private継承は使うだろ普通に
無名共用体はC++ではあんまり使わないかもしれないけどCではよく使う

900 :デフォルトの名無しさん:2008/12/28(日) 19:40:03
上に関しては、そんな書き方初めて見た。
それprivate扱いなの? 書き忘れ?

901 :デフォルトの名無しさん:2008/12/28(日) 19:50:43
>>900
C++のclassはアクセス指定を省けば
基本private。structはその真逆。

902 :デフォルトの名無しさん:2008/12/28(日) 19:58:21
なるほど、そのルールは継承にも適用されてたのね。。

903 :デフォルトの名無しさん:2008/12/28(日) 20:22:20
メンバー変数に対するポインタは、
自作インタープリタ上のオブジェクトを
C++のクラスに結び付けるテンプレートを書いた時に使ったことがある。


904 :デフォルトの名無しさん:2008/12/28(日) 23:43:57
メンバ変数に対するポインタは
リストの prev/next のどちらにも適用できる処理を書く際に使えたりする。

905 :デフォルトの名無しさん:2009/01/01(木) 02:18:43
いよいよ09年なわけだが

906 :デフォルトの名無しさん:2009/01/01(木) 03:41:14
今年中に纏まるとは思えないのだが。

907 :デフォルトの名無しさん:2009/01/01(木) 03:59:11
日本限定なら09年度という便利な言葉が使えるんだが。

908 :デフォルトの名無しさん:2009/01/01(木) 04:04:08
それでも猶予は4ヶ月しか増えないのだが

909 :デフォルトの名無しさん:2009/01/01(木) 06:57:41
いや、そもそも0x年まであと27年もあるわけだが

910 :デフォルトの名無しさん:2009/01/01(木) 07:08:47
C++0xa

911 :デフォルトの名無しさん:2009/01/01(木) 09:10:41
(++0x)
だからあと2年猶予があるぞ

912 :デフォルトの名無しさん:2009/01/01(木) 09:13:14
どうせ急いで制定してもC++プログラマの大多数は飛びつかないな・・・

913 :デフォルトの名無しさん:2009/01/01(木) 10:13:30
とりあえずautoだけでも早く使えるように頼む

914 :デフォルトの名無しさん:2009/01/01(木) 16:07:46
いやいやunique_ptrを

915 :デフォルトの名無しさん:2009/01/01(木) 16:14:38
スレッドの概念が入るだけでありがたい

916 : 【豚】 【282円】 :2009/01/01(木) 23:19:47
variadic templatesが使えるようになるのはいつですか

917 :デフォルトの名無しさん:2009/01/01(木) 23:25:07
2011

918 :デフォルトの名無しさん:2009/01/02(金) 07:47:47
>916
gcc 4.3 以降を入れれば今すぐにでも。

919 :デフォルトの名無しさん:2009/01/04(日) 03:38:53
const int n1 = 10;

constexpr int n2 = 10;
って何が違うの

920 :デフォルトの名無しさん:2009/01/04(日) 03:42:53
右辺が整数定数なら差はないんじゃね

921 :デフォルトの名無しさん:2009/01/04(日) 13:49:48
constexpr って導入する意味あるの?


922 :デフォルトの名無しさん:2009/01/04(日) 13:58:07
constexprな関数の導入に意味がある。

923 :デフォルトの名無しさん:2009/01/04(日) 14:25:05
constexpr constructor凄く便利。

ダラダラと逐次的な初期化コードや
それを含む初期関数を書く必要がなく、
データを宣言的に書ける。

924 :デフォルトの名無しさん:2009/01/04(日) 21:38:33
>>923
kwsk... constexpr って(有る程度複雑な)計算結果が定数として扱えるように
なるとしかわかってないんですが、それがデータが宣言的にかけるとは
どういうことでしょう?

925 :923:2009/01/04(日) 23:00:49
日本語訳もあるからググれ


926 :デフォルトの名無しさん:2009/01/17(土) 16:51:59
しかし本当遅くなったよな。

927 :デフォルトの名無しさん:2009/01/17(土) 17:47:05
もう大体固まってるからなぁ
ネタがない

928 :デフォルトの名無しさん:2009/01/17(土) 21:06:05
じゃあVS2010にconceptが入らない愚痴でも語るか

929 :デフォルトの名無しさん:2009/01/17(土) 21:30:10
愚痴って語るものなのか

930 :デフォルトの名無しさん:2009/01/17(土) 21:38:23
VSどころか大手商用はどこも入れてこないし
ConceptGCCは相変わらずグダグダだし
普通に使えるようになるまではまだまだかかりそうね

931 :デフォルトの名無しさん:2009/01/17(土) 21:40:42
一部でいいから実装してほしいな。 ていうか標準作るときにもうちょっと段階的に作って欲しかった。
autoとか超欲しいんですけど。

932 :デフォルトの名無しさん:2009/01/17(土) 21:58:00
>>930
> ConceptGCCは相変わらずグダグダだし

中の人は去年はMPI.NETやっていたみたいで、
ConceptGCC Developer's Blogもほとんど更新してないね。
寄付でMSに釣られちゃったんじゃないことを祈る。


933 :デフォルトの名無しさん:2009/01/18(日) 02:50:11
MSに釣られてConcept VC++作るんですね。

934 :デフォルトの名無しさん:2009/01/18(日) 07:53:31
>>932
javac.infoの中の人は、
MS Researchいっちゃったしね。


935 :デフォルトの名無しさん:2009/01/18(日) 08:15:24
conceptがexportみたくなったら超笑える

936 :デフォルトの名無しさん:2009/01/18(日) 09:03:05
それはないわ。
Conceptはむしろ流行る。
他の言語にも伝染すると思う。
Template並みのムーヴメント(笑)かと。
既にあるHaskellは除いて。

937 :デフォルトの名無しさん:2009/01/18(日) 11:12:06
ConceptGcc使ってみた感じだと
こんなのも明示的に指定しなきゃならないのかよ感が漂う

938 :デフォルトの名無しさん:2009/01/18(日) 11:26:23
こんなの流行るわけがねぇw

939 :デフォルトの名無しさん:2009/01/18(日) 11:37:35
conceptってconcept mapつかなかったらただのコンパイルエラーがわかりやすいテンプレートだよね。
そんなの流行るにきまってるじゃん。

940 :デフォルトの名無しさん:2009/01/18(日) 14:06:27
標準ライブラリのtrait→conceptの書き換えがまず起きる。

941 :デフォルトの名無しさん:2009/01/18(日) 17:37:35
templateってメタプログラミングしなかったらただの型を明示するわかりやすいコンテナが作れる機能だよね。
そんなの流行るにきまってるじゃん。

942 :デフォルトの名無しさん:2009/01/18(日) 18:00:39
>>941
マクロなしでmax(a,b)を書ける機能のことも忘れないであげてください

943 :デフォルトの名無しさん:2009/01/18(日) 18:07:45
最初の頃は、特殊化して別のクラス作るなら、
今までやっていたとおりマクロで十分じゃないかって意見も多かったよ。

#define List(T) \
class List_##T ...

ってのをtemplate以前にやってたから。


944 :デフォルトの名無しさん:2009/01/18(日) 18:08:29
C++はいい加減テキストマクロ廃止すべきだよ。
代わりに、ユーザ定義シンタックスとか入れれば流行るだろうに、
コンパイラベンダが許さないんだろうなあ。

945 :デフォルトの名無しさん:2009/01/18(日) 18:09:58
いちおーCでできることは全部できる建前だし

946 :デフォルトの名無しさん:2009/01/18(日) 20:20:54
HaskellだってGHCでCのプリプロセッサを使えるようにできるよ
多くのフラットフォームに対応するのには便利だよね

947 :デフォルトの名無しさん:2009/01/18(日) 20:27:23
マクロが必要=言語の不備という構図が見えてきて面白い

948 :デフォルトの名無しさん:2009/01/18(日) 20:32:34
コンパイラにジェネレータを統合できれば面白いのに

949 :デフォルトの名無しさん:2009/01/18(日) 20:45:21
マクロは必要だろ
コンパイル時の機能制限とか、環境依存のインラインアセンブラ切替とかAPI呼び出しとか、どうすんだ?

950 :デフォルトの名無しさん:2009/01/18(日) 20:55:45
その辺を閉じこめるためのattributeなんだろ

951 :デフォルトの名無しさん:2009/01/18(日) 20:57:03
>>949
その辺は、D言語ですでにマクロなしで実現されている

952 :デフォルトの名無しさん:2009/01/18(日) 21:04:41
D の version は素晴らしい。

953 :デフォルトの名無しさん:2009/01/18(日) 22:49:05
高度な言語機能でマクロの代わりのをするのは無理な感じがする
コンパイラのバグや処理系ごとの違いの吸収もマクロでやってるんだから
マクロを不必要にするための言語側の機能にバグや処理系ごとの違いがあると...

マクロぐらい簡単な代替が必要

ちなみにDのことはよく知りません

954 :デフォルトの名無しさん:2009/01/18(日) 22:52:05
>>953
いや、こんくらい調べろよ・・・。
ttp://www.kmonos.net/alang/d/2.0/version.html

955 :デフォルトの名無しさん:2009/01/18(日) 23:03:00
今までもインライン、テンプレートなどはマクロを使わなくて済むようにするためという見方だってできるだろう。
一歩ずつ、着実に。
C++1xでは#includeの後継が欲しい。

956 :デフォルトの名無しさん:2009/01/18(日) 23:06:51
const 定数もだな。

957 :デフォルトの名無しさん:2009/01/19(月) 00:26:22
必要とか不要とか言ったところで今更なくすの無理だろ

958 :デフォルトの名無しさん:2009/01/19(月) 00:44:59
不思議と便利になる気がしない言語だな。
何でわざわざ改良してくんだか、腐った料理にホイップしても食えるようにはならんべよ

959 :デフォルトの名無しさん:2009/01/19(月) 00:52:52
たしかに局所的には良くなっているように見えるんだが、
全体として見ればますます複雑になっているだけだ。

960 :デフォルトの名無しさん:2009/01/19(月) 00:53:51
言い忘れた。だがそこがいい。

961 :デフォルトの名無しさん:2009/01/19(月) 00:58:48
それはあらゆるプログラミング言語の宿命

962 :デフォルトの名無しさん:2009/01/19(月) 01:02:48
このスレにいる人は既に仕様見て全て把握してるのか・・・

963 :デフォルトの名無しさん:2009/01/19(月) 01:21:35
>>961
そんなことはないぞ。

964 :デフォルトの名無しさん:2009/01/19(月) 01:27:44
建て増しを重ねてカオスになるか(C++,Java)
作り替え続けて互換性地獄を招くか(D、各種LL)
変化をやめて引きこもるか(C89)

どれがいいんだろうね

965 :デフォルトの名無しさん:2009/01/19(月) 01:29:05
LispとかForthのことだな

966 :デフォルトの名無しさん:2009/01/19(月) 09:39:13
C:寿司
C++:フグ刺し
Java:フランス料理
LL:日替わり定食

967 :デフォルトの名無しさん:2009/01/19(月) 23:57:33
.NET:和洋折衷

968 :デフォルトの名無しさん:2009/01/20(火) 00:01:20
人それぞれだが、C++ の魅力はコンパイル時決定性の高さ。
その能力を向上させつつ柔軟性を増しており、素晴らしいと思う。
まあ、C++ はどちらでも一番ではないわけで、真の需要は高機能アセンブラとしてのものだろうけど。

969 :デフォルトの名無しさん:2009/01/20(火) 01:41:34
>>968
そう考えると、いかに間抜けな次規格ってなもんだよな。

970 :デフォルトの名無しさん:2009/01/20(火) 02:08:11
>>969
なんか「コンパイル時決定性」を損なうような変更入ったっけ?
スレッドとか?

971 :デフォルトの名無しさん:2009/01/20(火) 02:21:34
アセンブラとして中の動きをちゃんと把握したいのに
規格はどんどん無駄な抽象化の方向に進んでるからな
隠れて何かをコソコソやる機能はいい加減やめて欲しい

コンセプトマップとかどう考えても不可解なバグの温床になるとしか思えないから消えてくれ

972 :デフォルトの名無しさん:2009/01/20(火) 02:49:19
アセンブラ使いたいならアセンブラ使えば?
抽象化を理解できないお前がバグの温床かと。

973 :デフォルトの名無しさん:2009/01/20(火) 07:33:05
もうちょっとOOPよりの変更を入れてくれても良かったのにな

974 :デフォルトの名無しさん:2009/01/20(火) 07:38:04
C++はマルチパラダイムです。

975 :デフォルトの名無しさん:2009/01/20(火) 08:46:27
やっぱあまり率先して使う規格じゃないなー。

976 :デフォルトの名無しさん:2009/01/20(火) 09:08:52
>>971
アセンブラとしてってことなら実行時の話だろ?
動的メモリを隠れてコソコソってのが嫌というなら分かるが、
コンセプトマップは関係なくね?

977 :デフォルトの名無しさん:2009/01/20(火) 10:11:15
脳ミソがembeddedな人のために、ちゃんとembedded C++が制定されてますよ。

978 :デフォルトの名無しさん:2009/01/20(火) 11:20:43
>>977
テンプレート削るとか問題外だろ
さっさと滅びればいいと思う

979 :デフォルトの名無しさん:2009/01/20(火) 11:28:12
さすがにもう滅びてるだろ。

980 :デフォルトの名無しさん:2009/01/20(火) 11:40:02
>>977
OOも削ってくれ。

981 :デフォルトの名無しさん:2009/01/20(火) 19:50:50
見て見てー

#define loop(n) __loop(n)->*[&]

class __loop{
 unsigned int times_;
 __loop(unsigned int u) : times_(u){}
 void operator ->*(std::reference_closure<void()> &block){ while(times-->0)block(); }
};

int main()
{
 int x = 0;
 loop(100){
  ++x;
 }
}

どう思う?

982 :デフォルトの名無しさん:2009/01/20(火) 19:51:51
__の使い方がなってない

983 :デフォルトの名無しさん:2009/01/20(火) 19:55:37
namespaceという簡単な仕組みすらこれほど周知されていないのに、
いったいどうやったらコンセプトがメジャーになれるのか、はなはだ憂慮すべき一例ではある。

984 :デフォルトの名無しさん:2009/01/20(火) 20:04:35
ラムダ式早くきてくれー!!

985 :デフォルトの名無しさん:2009/01/20(火) 20:50:44
現場で誰も望んでないのにな。
仕様だけ決まってどうする。

c++/CLIを思い出すよな!

986 :デフォルトの名無しさん:2009/01/20(火) 20:57:07
C++0x/CLIの計画はあるんだろうか

987 :デフォルトの名無しさん:2009/01/20(火) 20:58:23
C++/CLIなんて必要な時に必要なところ限定で使えればいい言語だろ

988 :デフォルトの名無しさん:2009/01/20(火) 21:30:12
追跡右辺値参照が追加されるんですね

989 :デフォルトの名無しさん:2009/01/20(火) 21:33:42
interface が欲しい。
public 強制で virtual も = 0 も書かなくても純粋仮想関数になって
仮想デストラクタが自動的に作成されるやつ。

990 :デフォルトの名無しさん:2009/01/20(火) 21:35:57
じゃあインターフェイスメンバの明示的実装もお願い

991 :デフォルトの名無しさん:2009/01/20(火) 21:54:57
立てられなかった。
>>992 よろ。

============================================================
C++0x 5
============================================================
The C++ Standards Committee
http://www.open-std.org/jtc1/sc22/wg21/

wikipedia
http://ja.wikipedia.org/wiki/C%2B%2B0x

C++0x
http://pc11.2ch.net/test/read.cgi/tech/1149440647/
C++0x 2
http://pc11.2ch.net/test/read.cgi/tech/1191842951/
C++0x 3
http://pc11.2ch.net/test/read.cgi/tech/1204808027/
C++0x 4
http://pc11.2ch.net/test/read.cgi/tech/1214407525/

992 :デフォルトの名無しさん:2009/01/20(火) 21:58:00
>>983
個人的には、テンプレートのエラーメッセージがまだましになる機能として有望視している。

993 :デフォルトの名無しさん:2009/01/20(火) 22:18:30
>>989
conceptで我慢しなさい。

994 :デフォルトの名無しさん:2009/01/20(火) 23:07:08
つか、次スレ立ててくれ

995 :デフォルトの名無しさん:2009/01/20(火) 23:07:38
次スレいる?

996 :デフォルトの名無しさん:2009/01/20(火) 23:11:19
C++0x 5
http://pc11.2ch.net/test/read.cgi/tech/1232460649/
ほいな

997 :デフォルトの名無しさん:2009/01/20(火) 23:13:13
おつ

998 :デフォルトの名無しさん:2009/01/20(火) 23:16:05
うめるか

999 :デフォルトの名無しさん:2009/01/20(火) 23:16:38
999

1000 :デフォルトの名無しさん:2009/01/20(火) 23:17:11
>>1000なら俺がコンパイラを作って大もうけ

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

181 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)