トップページ⇒tech
1001コメント237KB

C++0x 3

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2008/03/06(木) 21:53:47
The C++ Standards Committee
http://www.open-std.org/jtc1/sc22/wg21/

wiki
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/
0153デフォルトの名無しさん2008/04/08(火) 22:16:47
>>151
それそれ、頼むからヘッダファイルで using namespace std; とかしないで欲しい!
だが、今のPRJではそこら中にあるんだよね…
そんなに std::string とか std::vector って書くのがめんどくさいのかね

>>152
それもそうだw
__cplusplusなんて値を意識しないもんなぁ extern"C" くらいにしか使わないからw
0154デフォルトの名無しさん2008/04/08(火) 22:42:46
美少女中学生を namespace 俺の姓; で囲んでバラ色の生活をだな
0155デフォルトの名無しさん2008/04/08(火) 22:49:26
ADL対策でstlの中にも名前空間を作っていけないとやっていけないんじゃないのか?
0156デフォルトの名無しさん2008/04/08(火) 23:23:08
>>151
単純にスタティックなオブジェクト言語の限界だと思うんだが
0157デフォルトの名無しさん2008/04/08(火) 23:47:46
>>151
ヘッダも今や階層化されてるし。
>>156
そんなの関係ないねえ
0158デフォルトの名無しさん2008/04/09(水) 00:30:10
>>157
> そんなの関係ないねえ
どんな意味で関係ないんだろ? >>151, >>156 は
> ヘッダも今や階層化されてるし。
このことを問題にしてるんじゃないのか?
0159デフォルトの名無しさん2008/04/09(水) 00:45:23
皆の見解をまとめると、これからはD言語の時代ってことか。
0160デフォルトの名無しさん2008/04/09(水) 01:54:30
それはない

何だかんだ言ってもここ20年間はおおむねCとC++の天下だったし、
それはこの先も変わらないだろうな
0161デフォルトの名無しさん2008/04/09(水) 03:09:07
関数型言語に取って代わられるだろうと予想する。
オブジェクト指向やC++にはスマートさで限界を感じる。
0162デフォルトの名無しさん2008/04/09(水) 04:26:18
まさか
LISPが誕生して50年になるけどその間に関数型言語が主流になったことなんて一度もないだろ
0163デフォルトの名無しさん2008/04/09(水) 04:44:38
>>162
ほんとにそうよね。

まあ、最近よく言われてるのは、
宣言型とか手続き型、静的とか動的の垣根がなくなっていくってのかな。

あとは、1つの言語で全部書くんじゃなくて、
多言語混在開発な方向に進んで行ってる。

というのを考えると、やっぱり C++ には限界を感じるんだけど。
0164デフォルトの名無しさん2008/04/09(水) 07:18:34
For me, easily the biggest news of the meeting was that we voted lambda functions and closures into C++0x.
・・・・・・・・・・・・・・・・・・
by Sutter
なぜlambdaやclosureに拘っているのかもわからん。
MSはF#に本腰を入れてるようだけど。
いずれにせよC++色々取り込みすぎて記述レベルに難があるとは思う。
0165デフォルトの名無しさん2008/04/09(水) 07:48:48
>>161
D言語はpure関数とかを導入して、関数プログラミングを取り込む方向で動いてるみたいだね。

http://www.digitalmars.com/d/2.0/accu-functional.pdf
どうなるかわかんないけど。
0166デフォルトの名無しさん2008/04/09(水) 07:55:09
ついおこづかいでアクセサリーを買い込みすぎてしまう美少女中学生
0167デフォルトの名無しさん2008/04/09(水) 08:29:09
>>166 美少女中学生以外は眼中にないのか?
0168デフォルトの名無しさん2008/04/09(水) 08:57:25
>>164
わからん方が鈍いと思うけどね。
0169デフォルトの名無しさん2008/04/09(水) 09:15:35
>>168
schemeをやってきた俺は勝ち組だがな。C++はのλはモドキだ。
0170デフォルトの名無しさん2008/04/09(水) 09:25:40
馬鹿丸出しだな。
0171デフォルトの名無しさん2008/04/09(水) 09:30:06
記述レベルに難がある
モドキ
だけじゃなくて、具体的に言わないと。
愚痴書くスレじゃないから。
0172デフォルトの名無しさん2008/04/09(水) 09:32:05
やっべー、薄っぺらいことがばれてもうたwww
でもテンプレートの可読性の低さは難だろ。キモ構文のオンパレード
それでもあなたはC++に期待しますか?
0173デフォルトの名無しさん2008/04/09(水) 09:39:49
メタをテンプレートで実現するのは難アリ。
0174デフォルトの名無しさん2008/04/09(水) 09:45:09
>>171
例えばscheme処理系は言語の機能として構文拡張が可能。
C++は言うに及ばず。
0175デフォルトの名無しさん2008/04/09(水) 09:53:56
Schemeと比べてああだこうだ言われても。
Schemeのプリミティブは強力だけど、
Schemeだって得意じゃないことは一杯あるし。

C++のclosureは、Javaの奴みたいに、
コントロール拡張について考慮されてないのが寂しいですねえ。
0176デフォルトの名無しさん2008/04/09(水) 10:53:42
>>175
>C++のclosureは、Javaの奴みたいに、
>コントロール拡張について考慮されてないのが寂しいですねえ。
もうちょっとkwsk
0177デフォルトの名無しさん2008/04/09(水) 11:23:44
つ http://jazoon.com/download/presentations/1680.pdf
0178デフォルトの名無しさん2008/04/09(水) 11:25:27
range-based for-loopと絡めたいね。
0179デフォルトの名無しさん2008/04/09(水) 12:31:24
>>162
まるでLISPが関数型言語みたいな言い方だな。w
0180デフォルトの名無しさん2008/04/09(水) 13:17:07
自分の知識がきっちりしていることをひけらかすだめだけの
細かい突っ込みは痛々しいよ。
その「句点のあとのダブリュー」に突っ込むくらい虚しいことだ。
0181デフォルトの名無しさん2008/04/09(水) 13:17:51
美少女中学生が丸出し!
0182デフォルトの名無しさん2008/04/09(水) 13:35:51
いい加減中学生から離れろ。
0183デフォルトの名無しさん2008/04/09(水) 13:38:14
そうだそうだ。中学生なんてババアだろ。
0184デフォルトの名無しさん2008/04/09(水) 14:50:27
>>180
あやふやな知識じゃ自慢できませんものね。w
0185デフォルトの名無しさん2008/04/09(水) 15:14:33
自慢というか、自爆。
0186デフォルトの名無しさん2008/04/09(水) 16:44:56
美少女中学生の初めての自慰はダイソーバイブと相場が決まっていてな
0187デフォルトの名無しさん2008/04/09(水) 17:39:48
つまりUnlambdaサイコー!ということですね
わかります
0188デフォルトの名無しさん2008/04/09(水) 21:42:03
>>177
遅くなりましたけれどありがとうございます.
finally 周りを省略するための使い方は, scope guard 系の技法に
lambda expression を組み合わせれば C++0x でもおよそそのまま転用できそうですね.
Listener に Event 設定したり, thread function の設定に使うのは
C++ だと lifetime の問題が出てくるのでそのまま転用するのが
難しい局面が出てくると思いますけれど,
これはコントロール云々とは直接は関係ないですかね.
0189デフォルトの名無しさん2008/04/10(木) 15:51:50
>>138
Dスレから来ました
> Brainf*ckやWhitespaceまでもがC++としてコンパイル可能
DでBrainfuckをDの関数としてコンパイルするサンプルはもう作ってみたよ。
C++でもテンプレートプログラミングが変態的になればできると思う。
メモリ管理がうまくいけばJavaあたりはC++で直接いけるような気がします
0190デフォルトの名無しさん2008/04/10(木) 16:11:46
Dか。
Dはやねうらおが一時期信者だったので敬遠してたんだが、
今は離れたみたいだし、ちょっと遊んでみようかな。
流行るとは思わないけれど。
0191デフォルトの名無しさん2008/04/11(金) 11:57:20
>>190
「誰々が信者だったから〜」
なんともくだらない理由だなww
0192デフォルトの名無しさん2008/04/11(金) 12:15:17
Rubyはまつもとが××信者だったから〜
0193デフォルトの名無しさん2008/04/11(金) 12:50:57
生理的に駄目なやつっているだろ

美少女中学生の生理なら駄目じゃないぞむしろ大歓迎
0194デフォルトの名無しさん2008/04/11(金) 18:00:43
製作者がGPL信者だったから敬遠しますた
0195デフォルトの名無しさん2008/04/11(金) 18:02:33
それは実害があるからしゃーないが・・・
坊主憎けりゃ袈裟まで憎いとか俺には一生分からない感情だろうな。
0196デフォルトの名無しさん2008/04/11(金) 18:30:23
「誰誰が信者だったから〜〜」
「坊主憎けりゃなんとやらか」
「でも今日は気にしないよ」
「あー、"今朝まで憎い"ってか」
0197デフォルトの名無しさん2008/04/11(金) 18:43:42
まつもとはいいかげん他言語を煽って目立とうとするのはやめてほしいんだが
煽りの内容もお前が言うなレベルの低次元なものだし・・・
0198デフォルトの名無しさん2008/04/11(金) 19:10:56
子供っぽい美少女中学生はどこが坊主?
0199デフォルトの名無しさん2008/04/11(金) 19:27:21
結局 Python に落ち着いた漏れ.
でも最近は仕事じゃPHPばっかりで萎える.
0200デフォルトの名無しさん2008/04/11(金) 20:40:51
まぁ標準みたいなもんだし
0201デフォルトの名無しさん2008/04/11(金) 23:00:49
C++0xはC++1xになるのだろうか…
0202デフォルトの名無しさん2008/04/12(土) 09:07:38
0f までいけるからまあ大丈夫だろ。
0203デフォルトの名無しさん2008/04/12(土) 09:27:12
07までだろ…
0204デフォルトの名無しさん2008/04/12(土) 11:47:56
それは盲点だった
0205デフォルトの名無しさん2008/04/12(土) 11:50:32
いいかげん0のプリフィクスで8進数リテラルっての止めて欲しい
誰も使わない上に紛らわしい

pythonを見習って止めるべし
0206デフォルトの名無しさん2008/04/12(土) 11:51:15
つ 互換性
0207デフォルトの名無しさん2008/04/12(土) 14:32:37
パーミション設定するときに使うべ。
0208デフォルトの名無しさん2008/04/12(土) 14:51:09
そうだな
パーミションは3ビットだから8進使うと便利だな
0209デフォルトの名無しさん2008/04/12(土) 14:55:54
そのために8進表記があるんじゃないのか
0210デフォルトの名無しさん2008/04/12(土) 14:59:15
別にパーミションのためにあるわけじゃないぞ。
0211デフォルトの名無しさん2008/04/12(土) 15:00:11
for all 3bit user
0212デフォルトの名無しさん2008/04/12(土) 16:04:49
それより2進表記を作ってくれ 0b0100110101010 みたいな
0213デフォルトの名無しさん2008/04/12(土) 16:08:27
読みづらいから D みたいに区切りを入れられるようにしてくれ。
0214デフォルトの名無しさん2008/04/12(土) 17:27:33
>>212
これ良く書かれてるんだけど
0xdcとかが11011100とかに見えないの?
実に不思議だ
0215デフォルトの名無しさん2008/04/12(土) 17:28:57
TMPで2進表記をする有名なサンプルがあってだな・・・
0216デフォルトの名無しさん2008/04/12(土) 17:34:12
>>214
「実質ゼロ時間・ゼロ労力」でできるのはせいぜいその辺の変換+αくらいで、
その程度ではまるで不便だから「よく書かれる」んだろう。

もし「0xdcが11011100に見えないレベルの人が」よくこの要望を出しているのだと考えているなら、
勘違いで自分を相対的に持ち上げすぎ。不思議っていうか、君が不思議ちゃんだよw
0217デフォルトの名無しさん2008/04/12(土) 17:36:42
頭の中で変換可能ならリテラルの表記は10進のみでおk
という話しになってしまうな

ただ二進数だと桁が多くなるから区切りがないと返って可読性落ちるな
0218デフォルトの名無しさん2008/04/12(土) 17:40:15
>>216
どういうこと?
16進と2進は直接4桁ごとに変換できるから2進表記はないんだろ?
そしてそれをほとんどができるから
よく書かれるってのは皮肉で書いたんだけど
0219デフォルトの名無しさん2008/04/12(土) 17:40:54
皮肉っていうのはおまえいつもそれ書いてるなって意味
0220デフォルトの名無しさん2008/04/12(土) 18:02:42
俺は脳内で変換できるから、5進数でも大丈夫
0221デフォルトの名無しさん2008/04/12(土) 18:04:05
16進でいいだろってのは釣りなんだから相手にしないでおけ。
0222デフォルトの名無しさん2008/04/12(土) 18:28:35
C系言語使うつもりなら
・2進 <-> 8進 <-> 16進の変換
・0xF*0xFまでの16進九九
・文字定数 <-> ASCII値
・主要な2^n値の10進表記(n=1〜16,20,24,30,31,32,40,63,64あたり)
くらいは身につけてるのが常識だし、マナーだと思ってたが
最近はそうでもないのか
0223デフォルトの名無しさん2008/04/12(土) 18:30:39
身につけるのが常識である事と、
そのままでいいこととは別の話だろ?
0224デフォルトの名無しさん2008/04/12(土) 18:34:33
そんなのまで言語側で面倒見るべきではないと思うぞ
九九を知らない奴が家を設計できるようになることが良いこととは思えない
0225デフォルトの名無しさん2008/04/12(土) 18:34:38
0b0100110101010
こんなのぱっと見て長すぎて分かりにくいし
たかだか16個のビットパターン覚えられないって方がネタだろ
0226デフォルトの名無しさん2008/04/12(土) 18:38:18
>>222
この辺、本当にそう思うならちょっと披露して欲しいと思った。
・8進16進変換
普通の人は、2進を介在させないと難しいと思う。
・16進9x9
必要になるケースがレアすぎる。
・2^nのnが40とか64とか。
nが16以下なら普通に言えるけど。nが32でさえ桁数が多すぎて普通は無理。
0227デフォルトの名無しさん2008/04/12(土) 18:38:20
D みたいに自由にアンダースコア入れれるようにすればいい。
0228デフォルトの名無しさん2008/04/12(土) 18:38:45
>>222
そんな化石言語使いません。
0229デフォルトの名無しさん2008/04/12(土) 18:39:30
マクロとか書けるけどな。
でも、できるなら言語的にサポートされてほしい。
0230デフォルトの名無しさん2008/04/12(土) 18:40:18
0b001101000101ならすぐ0x345とわかるけど
これを0b1101000101とか書かれると困る
0bの後に続く数は4の倍数個に制限するべきだが、導入されたとして多分そうはならないだろ
だったら有害なだけ
0231デフォルトの名無しさん2008/04/12(土) 18:40:59
いや32なら簡単だろさすがに
0232デフォルトの名無しさん2008/04/12(土) 18:41:41
>>231は思いっきり勘違い
0233デフォルトの名無しさん2008/04/12(土) 18:42:55
>>230
D ではこう書く。

0b11_0100_0101
0234デフォルトの名無しさん2008/04/12(土) 18:43:18
特にメモリが4Gに迫って色々あったり2038年問題の影がちらつきだしたこのご時世に
2^31と2^32の10進値も知らないコンピュータ技術者がいるなんて信じたくない
0235デフォルトの名無しさん2008/04/12(土) 18:44:27
だから、概数を覚えていることと全桁そらで言えることは違うって。
0236デフォルトの名無しさん2008/04/12(土) 18:45:06
およそ40億としか覚えてなかった
1048576までなら覚えてるけど
0237デフォルトの名無しさん2008/04/12(土) 18:45:36
20億代と40億代だと覚えておけば、
細かい値が必要なときだけ電卓でポンでいいだろ。
無駄な事覚えるのはタダのバカ。
0238デフォルトの名無しさん2008/04/12(土) 18:48:05
約21億と約43億としか覚えてないなぁ
けど2^24は16777216って覚えてるな
0239デフォルトの名無しさん2008/04/12(土) 18:48:14
>>234
2^10 = K
2^20 = M
2^30 = G

で十分だ。
0240デフォルトの名無しさん2008/04/12(土) 18:49:04
>>238
俺も 16777216 は覚えてるな。
何か覚えやすい並びだしな。
0241デフォルトの名無しさん2008/04/12(土) 18:50:18
>>239
Gってのは文脈によって1073741824・1047586000・1024000000・1000000000を意味する可能性がある
全然十分ではない
0242デフォルトの名無しさん2008/04/12(土) 18:51:08
>>239
2^10=1024も知らないとか冗談だろ?
0243デフォルトの名無しさん2008/04/12(土) 18:51:51
1024 は流石に知らないと恥ずかしいな。
0244デフォルトの名無しさん2008/04/12(土) 18:53:29
>>241
例えば伝送速度は1k=1000、メモリ容量などは1k=1024換算だ。

>>242
んなもん覚えてるわ
0245デフォルトの名無しさん2008/04/12(土) 18:53:37
2^31=2147483648は結構覚えやすいと思うんだけどな
万の区切りで48が2回出てくるし偶数桁目に4,4,3,4って調子よく並んでるし
0246デフォルトの名無しさん2008/04/12(土) 18:54:10
>>241
文脈だって、馬鹿じゃね
0247デフォルトの名無しさん2008/04/12(土) 18:54:58
2^8 = 256
2^10 = 1024
2^15 = 32768
2^16 = 65536

これはおさえとかないと確かにマズいな
0248デフォルトの名無しさん2008/04/12(土) 18:56:38
データ容量でキロを1000メガを1000000と解釈するのは記録メディア業界だけ?
0249デフォルトの名無しさん2008/04/12(土) 18:56:51
0xFFFF = 65535
これで覚えてる
0250デフォルトの名無しさん2008/04/12(土) 18:58:21
>>248
メディア業界でも会社によってメガが1000000だったり1024000だったりするから困る
(1048576であることはまずないけど)
0251デフォルトの名無しさん2008/04/12(土) 18:58:28
てかC++0xのスレだよな?
0252デフォルトの名無しさん2008/04/12(土) 18:59:21
いつまでも0bなんて粘着に持ち出すゆとりのせいで荒れたじゃないか
■ このスレッドは過去ログ倉庫に格納されています