C++0x 5
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2009/01/20(火) 23:10:49http://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/
0002デフォルトの名無しさん
2009/01/20(火) 23:12:09くヽ l^ i /: : : : : : : : Y: :ヽ
┏┓ ┏━━┓\\l l. /: :./ l: :.lヽ: : :ヽ: : :ヽ. ┏┓┏┓┏┓
┏┛┗┓┃┏┓┃ \\.l //: :/ノ l: :ト、ヽ: : :',: : :. ', ┃┃┃┃┃┃
┗┓┏┛┃┗┛┃┏━ \\━━━/ l: :/ ○ 丶l ○ l: : :ハ: : : :',━━━━┓┃┃┃┃┃┃
┏┛┗┓┃┏┓┃┃ \\. _/: :l: :l@┌‐┐ @ l: :/: :l: : : :.',. ┃┃┃┃┃┃┃
┗┓┏┛┗┛┃┃┗━━━ \/:::::::\ヽl.\ | ! /:// l: : : :..i ━━━┛┗┛┗┛┗┛
┃┃ ┃┃ {:::::::::::::::::`T7└‐┴‐< l: : : :. l ┏┓┏┓┏┓
┗┛ ┗┛ `r──‐┼-/l/l// 01i, l: : : : : l. ┗┛┗┛┗┛
/: : : : : : | /:/: l: : : :Y:::::::l l: : : : : :.l
,': : : : : :./ /: /: : : : l:::::::::l. l: : : : : : l
i: : : : : く/レへ: : : : l::::::::::',. !: : : : : : l
l: : : : : : :\:::::::::::ヽ イ:::::::::::::〉l: : : : : : : l
l: : : : : : : : :ト、:::::::::::::::>tjtjtjノ l: : : : : : : :l
',: : : : : : : :/├‐┤|─ '"| l: : : : : : : :l
ヽ: : : : / .l:::::::| l:::::::::::l ',: : : : : : :,'
\:/ l:::::::l |::::::::::l ヽ:: : : : /
0003デフォルトの名無しさん
2009/01/20(火) 23:13:441.書き込みウィンドウを出し半角入力に切り替える
2.Wキーを押しっぱなしにする
3.Wキを押しっぱなしにしながらsageのチェックするところをおもむろにクリック
0004デフォルトの名無しさん
2009/01/20(火) 23:14:54http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/
最新ドラフト
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2800.pdf
Status of Experimental C++0x Support in GCC 4.3
http://gcc.gnu.org/gcc-4.3/cxx0x_status.html
ConceptGCC
http://www.generic-programming.org/software/ConceptGCC/
Boost
http://www.boost.org
0005デフォルトの名無しさん
2009/01/20(火) 23:15:41いつもAlt+Wで書き込んでるんでたまに普通のブラウザ使うと一瞬戸惑う
0006デフォルトの名無しさん
2009/01/20(火) 23:17:02/ // /| r'7\ ,.ヘ‐'"´iヾ、/\ニ''ー- 、., / /
/ / | |::|ァ'⌒',ヽ:::ヽrヘ_,,.!-‐-'、二7-ァ'´|、__
`'ー-‐''" ヽ、_'´ `| |:::::|'" 二.,_> ,.へ_
/ //__// / / / `ヽ7::/
か っ も | / // メ,/_,,. /./ /| i Y //
ァ て う. |'´/ ∠. -‐'ァ'"´'`iヽ.// メ、,_ハ , |〉
| 約 ク ヽ! O .|/。〈ハ、 rリ '´ ,ァ=;、`| ,ハ |、 /
| 束 ソ > o ゜,,´ ̄ . ト i 〉.レ'i iヽ|ヽ、.,____
| し ス / ハ | u ,.--- 、 `' ゜o O/、.,___,,..-‐'"´
| た レ | / ハ, / 〉 "从 ヽ! /
| じ は |,.イ,.!-‐'-'、,ヘ. !、_ _,/ ,.イヘ. ` ヽ.
ッ .ゃ .立 |/ ヽ!7>rァ''7´| / ', 〉`ヽ〉
! ! な て .', `Y_,/、レ'ヘ/レ' レ'
い .な ヽ、_ !:::::ハiヽ. // /
で い ./‐r'、.,_,.イ\/_」ヽ ', / /
す / `/:::::::/ /,」:::iン、 / /
〈 ,,..-‐''"´ ̄ ̄77ー--、_\.,__ /
,.:'⌒ヽ ´ | | , i |ノ `ヾr-、
0007デフォルトの名無しさん
2009/01/20(火) 23:19:56スレがクソな訳じゃない。クソなのは(以下閲覧済み
0008デフォルトの名無しさん
2009/01/20(火) 23:21:27とセルフ突っ込み。
0009デフォルトの名無しさん
2009/01/20(火) 23:22:520010デフォルトの名無しさん
2009/01/20(火) 23:31:03これは乙じゃないんだからね!
0011デフォルトの名無しさん
2009/01/20(火) 23:33:15・こんせぷと!
テンプレートひきすうをせいげんするぞ!
constのつけわすれでエラーメッセージが1000ぎょうもでなくなる!
でもむずかしすぎてだれもじっそうできてないよ!
・らむだしき!
みんながまってたインラインかんすうオブジェクト!
STLがすっごくべんりになるよ!
でもこうぶんがすっごくグロいよ!
・うへんちさんしょう!
いちじオブジェクトをさすためのさんしょうだ!
いらないおぶじぇくとをぶっこわしてポインタをごうだつする!
それがむーぶせまんてぃくす!かこいい!
0012デフォルトの名無しさん
2009/01/20(火) 23:34:580013デフォルトの名無しさん
2009/01/21(水) 10:00:520014デフォルトの名無しさん
2009/01/21(水) 11:56:54/ / パカッ
//⌒)∩__∩
/.| .| ノ ヽ
/ | | ● ● |
/ | 彡 ( _●_) ミ まピョーん☆
/ | ヽ |∪| /_
// │ ヽノ \/
" ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
0015デフォルトの名無しさん
2009/01/21(水) 11:57:18‘^^’
0016デフォルトの名無しさん
2009/01/23(金) 17:43:19ラッパークラスを仕込むようにすれば何とか
0017デフォルトの名無しさん
2009/01/23(金) 18:08:04C++ってCのマクロなんでしょ?
Cってアセンブリのマクロなんでしょ?
アセンブリって機械語のマクロなんでしょ?
機械語って演算回路のマクロなんでしょ?
演算回路って電子の移動のマクロなんでしょ?
電子の移動ってクォークの作用のマクロなんでしょ?
クォークの作用って量子論のマクロなんでしょ?
0018デフォルトの名無しさん
2009/01/23(金) 18:09:15ここから先が全然違う
0019デフォルトの名無しさん
2009/01/23(金) 18:10:530020デフォルトの名無しさん
2009/01/23(金) 23:13:300021デフォルトの名無しさん
2009/01/24(土) 09:39:510022デフォルトの名無しさん
2009/01/24(土) 12:37:240023デフォルトの名無しさん
2009/01/24(土) 13:45:07まぁ俺が>>19だけどね。
0024デフォルトの名無しさん
2009/01/24(土) 15:29:46許す
0025デフォルトの名無しさん
2009/01/24(土) 18:20:220026デフォルトの名無しさん
2009/01/25(日) 14:11:06> クォークの作用って量子論のマクロなんでしょ?
これはちゃわんか?
0027デフォルトの名無しさん
2009/01/25(日) 14:12:250028デフォルトの名無しさん
2009/01/25(日) 14:45:20こんな超越的マクロが有るんだったらほしいかもな
0029デフォルトの名無しさん
2009/01/25(日) 15:18:050030デフォルトの名無しさん
2009/01/26(月) 00:28:350031デフォルトの名無しさん
2009/01/26(月) 02:38:200032デフォルトの名無しさん
2009/01/26(月) 02:48:33enable_shared_from_thisで我慢してください。
0033デフォルトの名無しさん
2009/01/26(月) 03:01:19いまいちスマートじゃないんだよなぁ。
0034デフォルトの名無しさん
2009/01/26(月) 09:18:540035デフォルトの名無しさん
2009/01/26(月) 09:21:220036デフォルトの名無しさん
2009/01/26(月) 10:33:130037デフォルトの名無しさん
2009/01/26(月) 10:45:47COBOLと違って
0038デフォルトの名無しさん
2009/01/26(月) 11:03:270039デフォルトの名無しさん
2009/01/26(月) 12:45:21そんなの現場は望んでない。
最先端で効率が下がったらいみねーよ
0040デフォルトの名無しさん
2009/01/26(月) 12:53:18つ COBOL
0041デフォルトの名無しさん
2009/01/26(月) 14:39:58ことさら「理論」を敬遠するのは日本「現場」の悪い傾向だよな。
0042デフォルトの名無しさん
2009/01/26(月) 15:34:17○最末端
0043デフォルトの名無しさん
2009/01/26(月) 17:49:35人月で積算するときの「効率」だろ。
0044デフォルトの名無しさん
2009/01/26(月) 19:12:510045デフォルトの名無しさん
2009/01/26(月) 19:47:57ソースは?
ソース出せよ!
0046デフォルトの名無しさん
2009/01/26(月) 22:16:590047デフォルトの名無しさん
2009/01/27(火) 00:27:11研究用のおもちゃとしてなら使うこともあるけど。
0048デフォルトの名無しさん
2009/01/27(火) 00:28:340049デフォルトの名無しさん
2009/01/27(火) 00:30:480050デフォルトの名無しさん
2009/01/27(火) 00:40:08C#のusingこそ(いい意味で)劣化デストラクタと呼べる存在だ。後発だけあってJavaより賢い。
0051デフォルトの名無しさん
2009/01/27(火) 00:47:280052デフォルトの名無しさん
2009/01/27(火) 00:48:280053デフォルトの名無しさん
2009/01/27(火) 00:52:25最近、サーバーサイドの案件はほとんどJavaかC#よ。
Windows Server 使えるならC# 1択。
あと、社内ツールとかには .NET 使ってる人多い。
お客様にランタイムインストールしてもらわなきゃとか気にしなくていいし。
0054デフォルトの名無しさん
2009/01/27(火) 21:50:11usingがいいのはわかる。
でも、インデントつかブロックが深くなって
しまうーところがかなりイヤ。
やっぱりC++の真デストラクタこそが最強!
0055デフォルトの名無しさん
2009/01/27(火) 21:56:000056デフォルトの名無しさん
2009/01/27(火) 22:54:32脳内の現場や脳内の研究の話をされても…
0057デフォルトの名無しさん
2009/01/28(水) 08:46:59一方的に脳内認定されてもな。
速度とメモリ効率考えると、実用するコードは
fortran,C,C++くらいしか選びようが無い分野も
多いとおもうんだけど。少なくとも自分の周りは
何処いっても同じようなもの。
普通に書いたCやC++とほぼ同等レベルの
速度で動けば十分な用途だとjavaやC#でもいいんだろうけど、
この辺で目指しているのは最終手段として
インラインアセンブラでベクトル化することもあるからな。
0058デフォルトの名無しさん
2009/01/28(水) 08:47:01Dってだけでよわい。
0059デフォルトの名無しさん
2009/01/28(水) 13:05:25>自分の周りは 何処いっても同じようなもの。
もっと見聞を広めたほうがいい。
でなければ、黙って脳内認定を受け入れろ。
0060デフォルトの名無しさん
2009/01/28(水) 13:59:15実行速度とメモリ効率だけならFORTRAN以外の選択肢は無いな…
C/C++含めて、FORTRAN以外が選択されることがあるのは、それだけが言語の選択基準じゃないってことだと思うんだが
0061デフォルトの名無しさん
2009/01/28(水) 22:48:260062デフォルトの名無しさん
2009/01/28(水) 23:34:59Pascal
0063デフォルトの名無しさん
2009/01/28(水) 23:40:090064デフォルトの名無しさん
2009/01/28(水) 23:43:040065デフォルトの名無しさん
2009/01/29(木) 00:08:22Javaより先に入れちゃえと言いたいところだけど、
もう閉じちゃったから10年後なんだよな orz
0066デフォルトの名無しさん
2009/01/29(木) 03:20:14実用的でないといっている訳ではないよ。
C++使えない、0xなんて現場で必要とされていないみたいな流れで、
逆にJavaやC#を使っていない・適用しづらい分野もあると
表明したかっただけ。
0067デフォルトの名無しさん
2009/01/29(木) 08:36:42「分野による」って話だと、
.NET やら Java VM 移植されてない環境だってあるわけだし、
組み込みだと未だCだし、
>>47 みたいな書き方するまでもなく、自明な話なんだが。
0068デフォルトの名無しさん
2009/01/29(木) 20:27:40いらん。
これ以上、デブにしてどうするよ?
0069デフォルトの名無しさん
2009/01/29(木) 21:04:520070デフォルトの名無しさん
2009/01/29(木) 22:43:270071デフォルトの名無しさん
2009/01/30(金) 08:40:040072デフォルトの名無しさん
2009/01/30(金) 09:17:280073デフォルトの名無しさん
2009/01/30(金) 11:14:420074デフォルトの名無しさん
2009/01/30(金) 12:32:400x対応の第4版早く書けハゲ
0075デフォルトの名無しさん
2009/01/30(金) 13:08:200076デフォルトの名無しさん
2009/01/30(金) 18:03:360077デフォルトの名無しさん
2009/01/30(金) 19:56:09臭くね?
0078デフォルトの名無しさん
2009/01/31(土) 16:07:56> お客様にランタイムインストールしてもらわなきゃとか気にしなくていいし。
なぜかVBのランタイムなら入れてやってもいいという客が多い。
0079デフォルトの名無しさん
2009/01/31(土) 17:54:22要は、その営業マンの所属するソフト屋が新しい技術についていけないだけなんだけどね。
その所為か、某官庁のシステムは未だにVB6が使われていたり。
0080デフォルトの名無しさん
2009/01/31(土) 23:03:55使う側としては.netの方がランタイムが大きい分、抵抗ありそう。
0081デフォルトの名無しさん
2009/01/31(土) 23:10:050082デフォルトの名無しさん
2009/01/31(土) 23:14:01.netランタイムは複数バージョンを同居させないといけないのが気に食わない
と書いてしまうところだった。
サンクス>>81
0083デフォルトの名無しさん
2009/02/01(日) 00:59:080084デフォルトの名無しさん
2009/02/01(日) 01:22:380085デフォルトの名無しさん
2009/02/01(日) 01:25:440086デフォルトの名無しさん
2009/02/01(日) 01:37:150087デフォルトの名無しさん
2009/02/01(日) 01:48:05Hoge^ hoge;
Hoge^* phoge = &hoge;
Hoge^*& rphoge = phoge;
って可能なの?
0088デフォルトの名無しさん
2009/02/01(日) 01:52:390089デフォルトの名無しさん
2009/02/01(日) 01:58:11まあ、ダングリングポインタ自体は元々危険だから
改めて気にすることは無いと思うけど。
0090デフォルトの名無しさん
2009/02/01(日) 02:13:410091デフォルトの名無しさん
2009/02/01(日) 04:02:09プロパティーとか、属性とかMS臭いすぎる仕様が気に食わん。
0092デフォルトの名無しさん
2009/02/01(日) 08:51:23属性は Java にも Annotation 付いたし。
MSはほんと後だしじゃんけんでいい物作るよ。
0093デフォルトの名無しさん
2009/02/01(日) 09:00:460094デフォルトの名無しさん
2009/02/01(日) 10:29:48分かります。
0095デフォルトの名無しさん
2009/02/01(日) 11:41:060096デフォルトの名無しさん
2009/02/01(日) 15:03:48その後、いつだか忘れたけど、ATL属性プログラミングといって、MIDLの属性の構文をVC++に持ち込んだ。
その構文がマネージドC++やC++/CLIにも引き継がれて今に至る。
0097デフォルトの名無しさん
2009/02/01(日) 15:05:380098デフォルトの名無しさん
2009/02/01(日) 15:17:26最初から誤解される書き方しかできない知能しか持ち合わせていないカスが、プログラミング言語を語るとは・・・
コンピューターの前に座ってばっかりじゃなくて、たまには人間と会話した方がいいぞ
0099デフォルトの名無しさん
2009/02/01(日) 17:57:100100デフォルトの名無しさん
2009/02/01(日) 18:04:59あと多重ディスパッチとかyieldとか
メタコンセプトもどうせ作るんだろうな
あとは何だ
0101デフォルトの名無しさん
2009/02/01(日) 18:25:550102デフォルトの名無しさん
2009/02/01(日) 18:32:10ThreadとかNetworkとかDatetimeとかFilesystemとか
実用的なのが多いね
0103デフォルトの名無しさん
2009/02/01(日) 19:38:27C++ は構文解析と意味解析が複雑に入り組んでいる事で悪名高いから、
これらが完全に分離された言語に一旦整理し直した、別言語を作るべき。
あくまで C++ と機能的には変わりのない範囲で。
0104デフォルトの名無しさん
2009/02/01(日) 19:59:300105デフォルトの名無しさん
2009/02/01(日) 20:26:24C++を使ってる俺が嬉しい
0106デフォルトの名無しさん
2009/02/01(日) 20:27:43サポートが遅れてもあんまり意味が無いからなあ
0107デフォルトの名無しさん
2009/02/01(日) 20:45:47何そのD言語
0108デフォルトの名無しさん
2009/02/01(日) 21:11:310109デフォルトの名無しさん
2009/02/01(日) 21:19:19常に scope を使えばいいのかもしれないが、なんだかな・・・
0110デフォルトの名無しさん
2009/02/01(日) 21:20:10D言語でもGCを止めて、C++のように書くことはできる。
0111デフォルトの名無しさん
2009/02/01(日) 21:28:300112デフォルトの名無しさん
2009/02/01(日) 21:38:00普通にC++のようにdeleteすればいい。
0113デフォルトの名無しさん
2009/02/01(日) 21:54:39いいね、それ。
0114デフォルトの名無しさん
2009/02/02(月) 00:49:28ファクトリー関数とかだるすぎる。
スマートポインタをコンストラクタ内で作れなくてもいいから、コンストラクトが終わった後になんか呼び出してくれ。
0115デフォルトの名無しさん
2009/02/02(月) 01:05:44before-daemon, after-daemonキター!
0116デフォルトの名無しさん
2009/02/02(月) 02:09:14そういうのは入らんのか。
テンプレートにちょっといろいろ
たすだけでできそうだが。
0117デフォルトの名無しさん
2009/02/02(月) 02:59:18AspectJ, Eiffel, ML, Haskell辺りの型システムを、
型の専門家が研究した成果を取り入れてる。
0118デフォルトの名無しさん
2009/02/02(月) 08:53:220119116
2009/02/02(月) 18:50:48conceptはtraitのちょっとした拡張くらいに
思ってたけど、違うんだ?
# 詳しくはまだ見てないんす。orz
何かの言語で、処理(関数)の前後とかに
別途定義する処理を定型的にねじ込む
機能を見たとき、すげぇ超うらやましい!
と思ったんだけど、あれが使えるのかな。
0120デフォルトの名無しさん
2009/02/02(月) 20:05:080121デフォルトの名無しさん
2009/02/02(月) 22:53:180122デフォルトの名無しさん
2009/02/03(火) 04:26:09C++の構文解析って、今はすべて手書きらしいね
こういうことがC++の将来に悪い影響を与えそうな気がする
構文を書き換える時期に来ているのかもしれない
0123デフォルトの名無しさん
2009/02/03(火) 04:52:16ほかの綺麗な言語でも高速な解析を目指せば自ずと自前で解析するだろうし、
何より今更そんな気にすることか?と思う。
0124デフォルトの名無しさん
2009/02/03(火) 08:36:010125デフォルトの名無しさん
2009/02/03(火) 09:18:53バカだなぁと思う。
特にifとカッコの間にスペース開ける奴。
騙されてるよなぁー、と思う。
0126デフォルトの名無しさん
2009/02/03(火) 09:20:410127デフォルトの名無しさん
2009/02/03(火) 09:22:14カッコまでが言語仕様だから。
カッコなしで通るなら、スペースを開けるのが正しいと思う。
0128デフォルトの名無しさん
2009/02/03(火) 09:24:03「騙されてる」の主語は誰だよ?
「ifとカッコの間にスペース開ける奴」が「騙されてるよなぁー」だと思ったぞ。
0129デフォルトの名無しさん
2009/02/03(火) 09:25:06スペース開けてる奴は、騙されてるよ。
0130デフォルトの名無しさん
2009/02/03(火) 09:29:50騙されてなけりゃ、単なるバカ。
0131デフォルトの名無しさん
2009/02/03(火) 09:33:02もうちょっと具体的に説明しないとただの電波さんw
0132デフォルトの名無しさん
2009/02/03(火) 09:46:140133デフォルトの名無しさん
2009/02/03(火) 09:46:410134デフォルトの名無しさん
2009/02/03(火) 10:00:46C++の構文解析は自然言語構文解析並みwと書いた人が以前いたが、
(g++のMLだったか?)
最近手でパーザを書くのが結構流行っているのは、
エラー処理をきちんとやりたいから。
g++のパーザはすごくわかりやすい。
gccのパーザはbisonの出力したCコードから派生しているけど、
これも以外にもすごくわかりやすい。
v8(Javascript)の手書きパーザもすごく綺麗。
0135デフォルトの名無しさん
2009/02/03(火) 10:11:05理屈はわかるが、いざ自分がそのパーサを書く係になったらと思うとぞっとするな。
0136デフォルトの名無しさん
2009/02/03(火) 10:42:34GUIで、入力足りないと、ダイアログウィンドウ出して、
入力してないフィールドを赤く表示して入力を促し、
側に警告も表示するっての似て、手間ばかり多いね。
ちなみにg++のパーザは2万行w (gccは8千行)
C++で書けばいいのに…
conceptg++のパーザは+1400行ですね。
// というかgcc本家のconcept branch放置されてる…
0137デフォルトの名無しさん
2009/02/03(火) 15:50:22parser combinatorとか使ってコード量を10分の1ぐらいにできないのかなぁ
0138デフォルトの名無しさん
2009/02/03(火) 18:19:38あなたはreturnにカッコを付ける人ですね
分かります
0139デフォルトの名無しさん
2009/02/03(火) 18:27:17もしかして同じ人?
0140デフォルトの名無しさん
2009/02/03(火) 18:41:11簡単なんでいいから一回パーサーを
書いてみろ。
気のきいたエラー処理がどれだけ
めんどくさいものか体感するべき。
0141デフォルトの名無しさん
2009/02/04(水) 00:26:20最近あちこちで電波垂れ流してる脳内住人が出没してる。
ここのスレにも、見てわかるとおり。多分同一人物だろうな。
0142デフォルトの名無しさん
2009/02/04(水) 00:31:070143デフォルトの名無しさん
2009/02/04(水) 00:38:09今時そんなコンパイラじゃ誰も使ってくれないだろう。
0144デフォルトの名無しさん
2009/02/04(水) 00:39:410145デフォルトの名無しさん
2009/02/04(水) 00:48:25これでも通るんだし別にいいんじゃね。
0146デフォルトの名無しさん
2009/02/04(水) 00:57:46連鎖的にエラーが出る事が多いから、
結局最初の1つくらいしか見ないとか多いしな。
そこ直したらもっかいコンパイルした方がエラーが見やすいし。
0147デフォルトの名無しさん
2009/02/04(水) 01:07:220148デフォルトの名無しさん
2009/02/04(水) 02:10:260149デフォルトの名無しさん
2009/02/04(水) 12:49:400150デフォルトの名無しさん
2009/02/04(水) 12:53:030151デフォルトの名無しさん
2009/02/04(水) 18:39:36特にdeclarationまわり
0152デフォルトの名無しさん
2009/02/04(水) 23:54:43typedefが止めを刺した感じ。
classやtemplateやcoceptはキーワード付けてくれて本当に良かったよ。
0153デフォルトの名無しさん
2009/02/05(木) 11:08:28何かで見たけど、キーワードはできるだけ
追加しないってのがポリシーなんだよね。
0154デフォルトの名無しさん
2009/02/05(木) 11:14:40わかってないな。
省略できるから、つけようがつけまいが自由なんだぞ。
単にあのかっこも、一時期のバグ回避だし。
0155デフォルトの名無しさん
2009/02/05(木) 11:45:460156デフォルトの名無しさん
2009/02/05(木) 11:54:320157デフォルトの名無しさん
2009/02/05(木) 12:00:290158デフォルトの名無しさん
2009/02/05(木) 12:12:450159デフォルトの名無しさん
2009/02/08(日) 20:28:10へー、そんな理由がねぇ。
おいらてっきり、void return(x);的な関数に見せかけたいが為に
やってんだと思ってた。あんま関係ないけど
int(main)(int(argc),char**(argv))なんて所にも括弧付けれるね。
まぁ、当方returnですらカッコ付けたことは無いから付ける輩の気持ちは解らんけど。
0160デフォルトの名無しさん
2009/02/08(日) 20:33:08ANSI 以前の。
大昔の良書(今となっては歴史的資料)がANSI以前の文法で書かれてたりするせいで、
それが正しい書式だと思ってる人が絶えなかった。
0161デフォルトの名無しさん
2009/02/08(日) 20:35:060162デフォルトの名無しさん
2009/02/08(日) 22:26:28>return って、20年以上前の大昔には実際に関数だったとかじゃなかったっけ?
それはない。exit()の実装と勘違いしていないか?
0163デフォルトの名無しさん
2009/02/08(日) 22:51:35このレスは全て間違い。以下無視するように。
0164デフォルトの名無しさん
2009/02/08(日) 22:56:56ttp://www.kouno.jp/home/c_faq/c20.html#0
> 20.19:
> returnの後ろに来る式をくくるカッコは本当に省略可能か。
> A:
> 省略可能だ。
> 大昔、Cの初期には、必要であった。そのころにCを学んだ人がたくさんいるし、
> そのころ書かれたコードが今でも世の中に出まわっている。 それでカッコが
> 今でも必要であるという考えが広まっている。
ということで、昔は必要だった(が関数ではない)ってのが正しいようだ。
0165デフォルトの名無しさん
2009/02/09(月) 00:52:050166デフォルトの名無しさん
2009/02/09(月) 06:58:32つか、不要にするならするで if や while もカッコ不要にして統一しろよ。
0167デフォルトの名無しさん
2009/02/09(月) 07:24:14ifやwhileは括弧があっても、タイプミスをするとコンパイル時に検出できるが、
returnに括弧があるとそうはいかない。
0168デフォルトの名無しさん
2009/02/09(月) 08:53:03retrun() でハマるというネタが
0169デフォルトの名無しさん
2009/02/09(月) 10:42:17つーか
統一するという言葉自体に惹かれても意味ないし
第一、統一する理由がない
0170デフォルトの名無しさん
2009/02/09(月) 11:42:57そうしろっていってるんじゃなくて、ふとした疑問で
0171デフォルトの名無しさん
2009/02/09(月) 12:30:29と定義すれば既に統一されてるじゃん
空白や(は識別子に含めないからそこで打ち切られてreturnが認識され、
以降の式が続けて認識される
0172デフォルトの名無しさん
2009/02/09(月) 16:13:55break continue sizeof系統だからある意味統一されてるだろ。
0173デフォルトの名無しさん
2009/02/09(月) 16:26:05sizeofちと違う
0174デフォルトの名無しさん
2009/02/09(月) 17:58:38ついでにifなどにぶら下がる文を複文限定にして、中括弧必須にしてくれればいいのにと思う。
0175デフォルトの名無しさん
2009/02/09(月) 18:14:320176デフォルトの名無しさん
2009/02/09(月) 19:22:59#define end }
0177デフォルトの名無しさん
2009/02/09(月) 20:02:27嘘のような、本当の話。
0178デフォルトの名無しさん
2009/02/09(月) 21:21:51つーか、ゴテゴテ強化してJAVAより遅くなってたら笑える。
0179デフォルトの名無しさん
2009/02/09(月) 21:23:53STL コンテナと一緒に使えますか?
0180デフォルトの名無しさん
2009/02/09(月) 21:42:500181デフォルトの名無しさん
2009/02/10(火) 09:15:300182デフォルトの名無しさん
2009/02/10(火) 11:57:450183デフォルトの名無しさん
2009/02/10(火) 19:11:500184デフォルトの名無しさん
2009/02/10(火) 20:59:45#define retrun return
#define cahr char
0185デフォルトの名無しさん
2009/02/10(火) 21:06:58#define sohrt short
#define unsgied unsigned
#define long lgon
#define vodi void
#define defien define
#define incldue include
#define thrwo throw
0186デフォルトの名無しさん
2009/02/10(火) 21:18:270187デフォルトの名無しさん
2009/02/10(火) 22:49:200188デフォルトの名無しさん
2009/02/10(火) 23:04:18テンプレートでarray使うと、C#より遅くなるんだからたまらん。
0189デフォルトの名無しさん
2009/02/11(水) 00:08:35え〜。コンパイル時に最適化掛けてないとかそんな話じゃないよね?
0190デフォルトの名無しさん
2009/02/11(水) 00:36:580191デフォルトの名無しさん
2009/02/11(水) 01:09:58知り合いで大学院で C++ でシミュレーションをしていた奴が、
遅くて困るんだよね... といってたから最適化オプションはどうしてる?と聞いたら
何もしらなくて、調べてみるとなんとデバッグオプションつきで
inline 展開も無しだったという恐ろしい話があったのでね...
0192デフォルトの名無しさん
2009/02/11(水) 01:20:190193デフォルトの名無しさん
2009/02/11(水) 01:36:500194デフォルトの名無しさん
2009/02/11(水) 03:34:240195デフォルトの名無しさん
2009/02/11(水) 23:05:340196デフォルトの名無しさん
2009/02/12(木) 22:07:490197デフォルトの名無しさん
2009/02/13(金) 18:09:29スレッドのバグが山のように報告されてて吹いた
0198デフォルトの名無しさん
2009/02/13(金) 20:58:230199デフォルトの名無しさん
2009/02/13(金) 21:15:070200デフォルトの名無しさん
2009/02/13(金) 22:36:240201デフォルトの名無しさん
2009/02/14(土) 00:28:130202デフォルトの名無しさん
2009/02/15(日) 02:07:01const class とかでキーワード導入しなくても大丈夫そうな気がするんだけど。
0203デフォルトの名無しさん
2009/02/15(日) 02:14:040204デフォルトの名無しさん
2009/02/15(日) 02:33:020205デフォルトの名無しさん
2009/02/15(日) 03:36:120206デフォルトの名無しさん
2009/02/15(日) 05:12:010207デフォルトの名無しさん
2009/02/15(日) 08:03:040208デフォルトの名無しさん
2009/02/15(日) 13:43:24[[final]]っていうオーバーライド禁止属性が入る
0209デフォルトの名無しさん
2009/02/15(日) 14:56:54virtual member function にたいしてだけ?
0210デフォルトの名無しさん
2009/02/15(日) 16:24:18効果はクラスの全仮想関数に[[final]]を付けるのと同じ
0211デフォルトの名無しさん
2009/02/15(日) 16:46:12継承禁止ならともかく仮想関数オーバーラード禁止してどうするの?
virtual付けなきゃ良いだけじゃない。
0212デフォルトの名無しさん
2009/02/15(日) 17:10:070213デフォルトの名無しさん
2009/02/15(日) 17:14:36> virtual付けなきゃ良いだけじゃない。
( ゚д゚)ポカーン
0214デフォルトの名無しさん
2009/02/15(日) 17:45:54俺に言われても困るが、virtual付き関数のオーバーライドさえ封じておけば
基底クラスの機能を派生側で変更できなくなるんだから十分だろう
virtualにしないという手は、基底クラスから受け継いだ仮想関数がある場合には使えない
クラス付き[[final]]はそういうのにも効いてくれるから意味がある
0215デフォルトの名無しさん
2009/02/15(日) 19:25:02やっぱりそういう事なんだ。成るほどね。
>>202に「final classに相当するもの」って書いてあったから、
Javaと同系統の機能なのかと混乱したよ。
0216デフォルトの名無しさん
2009/02/16(月) 01:57:180217デフォルトの名無しさん
2009/02/16(月) 21:39:37やっぱりキッパリと「派生クラス作ったらアウト」にして欲しかったな
仮想デストラクタ作らないと派生禁止にできないのは本末転倒な気がする
0218デフォルトの名無しさん
2009/02/16(月) 22:39:33final が必要なケースのほとんどは悪い設計の尻拭いでしょ
そんなことより早く仕様Fixして欲しいよ
0219デフォルトの名無しさん
2009/02/16(月) 22:40:34finalが必要なんだろう。
0220デフォルトの名無しさん
2009/02/16(月) 22:45:07今年中には無理だな
0221デフォルトの名無しさん
2009/02/16(月) 23:41:14日本語だとあんまり C のとかわらなくね?
function of int i and int j which returns array of pointers to function of int i
とかそのままになる?んだろうけど日本語の語順とは全然ちがうよね。
0222デフォルトの名無しさん
2009/02/17(火) 00:09:52読みやすさのためじゃないからな
しっかし既存の宣言に無理矢理押し込むためにこれ→[]を型扱いしようとしたり
この期に及んで関数とラムダを完全統合しようと派手に文法いじくり回したり
迷走がひどい
0223デフォルトの名無しさん
2009/02/17(火) 00:22:59最早ここまで崩れたら英語圏だろうどこの人間でも
気にする気にもならんと思うんだが。
0224デフォルトの名無しさん
2009/02/17(火) 00:23:56C++にいれるには無理がある。
0225デフォルトの名無しさん
2009/02/17(火) 01:06:200226デフォルトの名無しさん
2009/02/17(火) 01:07:08とくにdecltypeがあるC++0xにとっては。
0227デフォルトの名無しさん
2009/02/17(火) 01:24:49[*]とか何か導入できなかったのかな。バカだなー。
0228デフォルトの名無しさん
2009/02/17(火) 01:41:12dynamic deleterが要件に入ってないとか何なの?死ぬの?
0229デフォルトの名無しさん
2009/02/17(火) 02:08:280230デフォルトの名無しさん
2009/02/17(火) 02:29:42入れないほうが無理があるよw
俺はあのスタイルは好きじゃないけれど、
なんか入れないと>>226の言う通りで破綻する。
0231デフォルトの名無しさん
2009/02/17(火) 02:44:020232デフォルトの名無しさん
2009/02/17(火) 03:52:37どこ読んでそう思ったの?
n2800 見たけど、 get_deleter() とかあるし、 template 引数には静的な deleter 型は無いよ。
これなら deleter については boost::shared_ptr と同じでしょ。
0233デフォルトの名無しさん
2009/02/17(火) 07:22:12関数の戻り値の型は前置しても
以降の部分を考慮できるようにはできないんだろうか。
0234デフォルトの名無しさん
2009/02/17(火) 14:53:020235デフォルトの名無しさん
2009/02/17(火) 16:33:44[] func(int arg) -> void {}
0236デフォルトの名無しさん
2009/02/17(火) 16:35:510237デフォルトの名無しさん
2009/02/17(火) 18:30:440238デフォルトの名無しさん
2009/02/17(火) 20:53:21コンストラクタで明示的に指定するdeleterの話じゃないぞ
boost::shared_ptr<Base> p(new Derived);
が(~Base()が仮想じゃなくても)デストラクタで~Derived()を呼んでくれるのがdynamic deleterだけど
N2800のtemplate<class Y> explicit shared_ptr(Y* p);の説明をよく読んでくれ
4 Requires: p shall be convertible to T*. Y shall be a complete type. The expression delete p shall
be well formed, shall have well defined behavior, and shall not throw exceptions.
5 Effects: Constructs a shared_ptr object that owns the pointer p.
6 Postconditions: use_count() == 1 && get() == p.
ポインタpを所有したshared_ptrを作るとは書いてあるが、Y*として所有するとは書いてない
pはT*に変換できなければならないし、事後条件で出てくるget()の戻り値型はT*だし
T*として所有する実装は十分にありうる
そして~shared_ptr()の説明には(deleterを指定していなければ)所有するポインタpに対して
delete p;を呼ぶとしか書いてない
つまり、Y*を持ってるshared_ptrならdelete (Y*)p;を呼んで欲しい(そしてboostはそうなってる)のに、
stdの方はdelete (T*)p;を呼びやがる可能性がある(そして破滅が待ってる)
というわけで、shared_ptr<Base> p(new Derived);の解体に~Base()を呼び
shared_ptr<void>は使い物にならずpimplに使うと鼻から悪魔を呼ぶ「標準準拠」のshared_ptrがありうるわけだ
恐ろしい話だと思わないか
0239デフォルトの名無しさん
2009/02/17(火) 21:18:19というように書いてあるような気がするんだけど。
仮にそこが保障されなかったとしてもdeleterを指定できるんだから、
ファクトリ関数ひとつ書くだけですべてうまくいくような気がするんだけど。
0240デフォルトの名無しさん
2009/02/17(火) 21:23:54とにかく最強を目指す
ただし何が最強かは重要ではない
0241デフォルトの名無しさん
2009/02/17(火) 21:31:15「このポインタpを所有するshared_ptrオブジェクト」とあるから T*では
条件を満たさないんじゃね?
0242デフォルトの名無しさん
2009/02/17(火) 21:33:54どこに書いてる?
コンストラクタの説明ではdelete pがwell formed/well defined behaviorじゃなきゃダメだとは書いてるけど
デストラクタの説明には「そのdelete p」を呼ぶとは書いてない(pの真の型については何も触れてない)
それにget()の説明を見ると「stored pointer」はT*であるというようにも見える
Y*で持ってY*で解体しろと強制してる箇所は見あたらないと思うんだけどなぁ
deleter指定すればどうにかなるってのは関係ない話
boost::shared_ptrはそんなものなくても上手くいってるんだから
0243デフォルトの名無しさん
2009/02/17(火) 21:39:11そこがハッキリしないんだよなぁ
「ポインタ」がアドレス値の情報だけなら別の型のポインタで持ったっていい訳だし
型も含めて全部保存しろとなると、今度はboostの方アウトになるような気がする
確か内部的にはvoid*で持ってるから
0244デフォルトの名無しさん
2009/02/17(火) 21:41:33と
auto func(int arg) -> void {}
どちらが正式になりそう?
0245デフォルトの名無しさん
2009/02/17(火) 21:45:50俺としては、後々のことも考えて、統一して欲しいところなんだが、(今回は規格に入らないlocal functionとかnamed lambdaなどを入れる際に簡単)
でもなー、実際に書かれたコードを読むと、後者のほうがぱっと見に分かりやすいんだよね。
0246デフォルトの名無しさん
2009/02/17(火) 21:45:52autoが意味持ちすぎだから[]の方がいいと思うけどね
0247デフォルトの名無しさん
2009/02/17(火) 21:47:57まだ数年かかるんじゃない?
x == 9にはならんだろう。
0248デフォルトの名無しさん
2009/02/17(火) 21:51:16>Y*で持ってY*で解体しろと強制してる箇所
だから
Requires: p shall be convertible to T*. Y shall be a complete type. The expression delete p shall
be well formed, shall have well defined behavior, and shall not throw exceptions.
これでしょ?
デストラクタのところに書いてあるわけないじゃん。
>deleter指定すればどうにかなるってのは関係ない話
deleter指定したら確実にうまくいくんだから、関係無くはないだろ。
お前もギャーギャー騒ぐ必要がなくなる。
0249デフォルトの名無しさん
2009/02/17(火) 21:58:18pがT*に変換できて、Yが完全型で、「delete p」の形式が適格で定義済みの振る舞いをして例外を投げない
としか書いてないように見えるんだけど、どこで「Y*で持ってY*で解体しろと強制してる」の?
それにdeleter指定するだけでいいとは言うけど、
boost::shared_ptrを使ってる所を全部探して適切なdeleter作って書き直すのと
ただboost::shared_ptrをstd::shared_ptrに置換するだけで済むのでは全然違うと思うんだがね
0250デフォルトの名無しさん
2009/02/17(火) 22:05:130251デフォルトの名無しさん
2009/02/17(火) 22:06:31書いてなければ、delete p がwell formedになるためには、一体どうすればいいんだろうな。
0252デフォルトの名無しさん
2009/02/17(火) 22:09:11delete p;の形式についてだけ適格で定義済みの振る舞いを要求していて、
delete (T*)p; の形式については適格で定義済みの振る舞いを要求していない以上、
実装がY*として解体するのはもう強制でしょ。
>deleter作って書き直す
いちいち個別にdeleter作る必要は無いけどね。
>ただboost::shared_ptrをstd::shared_ptrに置換するだけで済む
ちょっと頭使った置換じゃないと確かにうまくいかんかもなー。
0253デフォルトの名無しさん
2009/02/17(火) 22:09:31それがどうした
0254デフォルトの名無しさん
2009/02/17(火) 22:12:320255デフォルトの名無しさん
2009/02/17(火) 22:14:39http://d.hatena.ne.jp/Cryolite/20060108
問題は保存してるポインタの型じゃなくて呼ばれるデストラクタがいつ決まるか
N2800には何も書いてない
0256デフォルトの名無しさん
2009/02/17(火) 22:15:430257デフォルトの名無しさん
2009/02/17(火) 22:21:051) どうしてここまでして C++ 使いたいんだ?
2) 型に厳格な関数型言語で十分じゃね?
0258デフォルトの名無しさん
2009/02/17(火) 22:22:43ただし何が最強かは重要ではない
0259デフォルトの名無しさん
2009/02/17(火) 22:23:40スレ違いどころか板違いです。
0260デフォルトの名無しさん
2009/02/17(火) 22:27:53だからどこに?
コンストラクタではdelete pがwell definedでもデストラクタでdelete pが未定義になりうるってのが
pimplでの問題なんだけど
0261デフォルトの名無しさん
2009/02/17(火) 22:34:32Requires: p shall be convertible to T*. Y shall be a complete type. The expression delete p shall
be well formed, shall have well defined behavior, and shall not throw exceptions.
0262デフォルトの名無しさん
2009/02/17(火) 22:40:12だからそれはコンストラクタでしょ
shared_ptrのコンストラクタではimplクラスの完全な定義が見えてなきゃならないから、
その位置ではdelete p;はwell definedになるけど、
外側のデストラクタが自動生成だった場合にimplクラスの定義が見えてなくて
shared_ptrのデストラクタが呼ぶdelete p;が未定義になりうるんだが、
それを禁じる要件はshared_ptrのデストラクタの説明には書いてない
わかる?
0263デフォルトの名無しさん
2009/02/17(火) 22:41:22今年もやるらしいから、そんとき誰かが言えば、委員会の人まで話が届くぞ。
0264デフォルトの名無しさん
2009/02/17(火) 22:47:21デストラクタにdeleterを持つときは、d(p)となると書いてある。
ここでは明確に書かれていないが
template<class Y> explicit shared_ptr(Y* p);
は、Y*として解体するdeleterを設定しなければ仕様を満たせない。
template<class Y> explicit shared_ptr(Y* p);
の仕様に
The expression delete (T*)p shall
be well formed, shall have well defined behavior, and shall not throw exceptions.
という一文が無い限りは。
0265デフォルトの名無しさん
2009/02/17(火) 22:50:16やっぱりわかってなかったのな
pimplの時の問題だと言ってるだろう
Y==Tの場合だ
shared_ptr<impl>をimpl*で作った時に呼ばれるimplのデストラクタの話をしてるんだぞ
0266デフォルトの名無しさん
2009/02/17(火) 22:53:30いや、それでも同じ話ですけど。
適切なdeleterがなされなければ、仕様を満たさないでしょ
0267デフォルトの名無しさん
2009/02/17(火) 22:56:43もう一度言うけどY==Tでの話だぞ
0268デフォルトの名無しさん
2009/02/17(火) 23:01:07template<class Y, class D> shared_ptr(Y* p, D d);の形のコンストラクタで渡されるdのことであって
template<class Y> explicit shared_ptr(Y* p);は「deleterを所有」しない
0269デフォルトの名無しさん
2009/02/18(水) 00:05:260270デフォルトの名無しさん
2009/02/18(水) 01:31:05> template<class Y> explicit shared_ptr(Y* p);
> Effects: Constructs a shared_ptr object that owns the pointer p.
> ~shared_ptr();
> Effects:
(略)
> ? Otherwise, *this owns a pointer p, and delete p is called.
ここでイタリックになってる "owns" を厳密な用語として読めばつながる。
つまり
int* p = new int;
shared_ptr<void> x(p);
によって x は p を「所持」する。 (void*)p を「所持」するのではない。
このまま x のデストラクタが実行されるとき、 x は deleter を持たず
p を「所持」しているので、 delete p が実行される。何も問題ない。
0271デフォルトの名無しさん
2009/02/18(水) 02:17:33問題はデストラクタテンプレートの実体化時点でpが不完全型ポインタになってる時に
「delete p」が未定義動作にならないような仕掛けが規格で強制されてるかどうか
0272デフォルトの名無しさん
2009/02/18(水) 03:08:39できるよ。現にD言語ではそうなってるし。
単に実装面倒だからコンパイラベンダが反対してるだけでしょ。
Dだと、こんなふうにかける:
typeof(T+U) add(T, U)(T t, U u) { return t + u; }
もっと簡単に
auto add(T, U)(T t, U u) { return t + u; }
ともかけるけど。
0273デフォルトの名無しさん
2009/02/18(水) 03:12:24そういうことか。
なるほど。今の記述だとはっきりしないね。
Effects の記述は boost のドキュメントと同じだけど、 boost のほうには
template<class Y> explicit shared_ptr(Y * p) について注釈が添えられている。
> The destructor will call delete with the same pointer, complete with its original type, even when T does not have a virtual destructor, or is void.
規格にもこれが必要(できればもっとはっきり強制する書き方で)ってことだね。
早めに DR 挙げてくれ。
0274デフォルトの名無しさん
2009/02/18(水) 08:02:53実装が面倒っての、ここまですでに複雑な言語だと、結構な問題では。
あと、C# 使いとして言わせてもらうと、
T Add<T>(T x, T y) の最初の T でインテリセンスが利かないのはかなりのストレス。
0275デフォルトの名無しさん
2009/02/18(水) 08:27:04○VisualStudio使い
◎MS迎合派
0276デフォルトの名無しさん
2009/02/18(水) 09:17:100277デフォルトの名無しさん
2009/02/18(水) 09:30:040278デフォルトの名無しさん
2009/02/18(水) 16:16:500279デフォルトの名無しさん
2009/02/18(水) 17:59:58とりあえずラムダは真っ先に消される
コンセプトはテンプレートがないんだから入るわけがないな
右辺値参照はどうかな、組み込みでこそ必要だと思うけど消しそうだなw
0280デフォルトの名無しさん
2009/02/18(水) 18:24:51ライブラリがないから特殊用途以外は既に死んでる。
DarwinのI/O Kitですらnamespaceはありになってるし。
0281デフォルトの名無しさん
2009/02/18(水) 19:18:32Embeddedって日本独自の規格だっけ?
製品化されてる実装なんてあるの?
0282デフォルトの名無しさん
2009/02/18(水) 19:35:47>Embeddedって日本独自の規格だっけ?
事実上日本独自規格
C++のまともな処理系が作れないから、作りやすい縮小規格を作ったってだけ
>製品化されてる実装なんてあるの?
GHS C++なんかはサポートしてるみたい
0283デフォルトの名無しさん
2009/02/18(水) 19:41:57http://www.dinkumware.com/
> ・a full implementation of EC++, the widely used embedded subset of Standard C++
彼は"Embedded Systems Programming"にコラム書いていて、
よくコンサルもやってた。http://www.plauger.com/esp.html
メイヤーさんも組み込み屋相手によくレクチャーしてる。EC++はやってるかどうかしらんが。
0284デフォルトの名無しさん
2009/02/18(水) 20:08:08C#より早いやつを頼むよ。
0285デフォルトの名無しさん
2009/02/18(水) 21:44:240286デフォルトの名無しさん
2009/02/19(木) 00:55:27言語オタクにはわからんだろうが。
0287デフォルトの名無しさん
2009/02/19(木) 01:03:030288デフォルトの名無しさん
2009/02/19(木) 01:56:22もう死んでるようにしか見えないんだけどどうなの
どっかで亡霊みたいに生き延びてるの?
0289デフォルトの名無しさん
2009/02/19(木) 02:01:240290デフォルトの名無しさん
2009/02/19(木) 02:15:51うまいこと行ったのはRubyぐらいか?
てか著名なソフトの作者は大体医者だったりする所が泣ける。
0291デフォルトの名無しさん
2009/02/19(木) 02:43:250292デフォルトの名無しさん
2009/02/19(木) 07:41:03これが止め刺したから必要ない。
C++ - TR 18015
Technical Report on C++ Performance
http://www.open-std.org/jtc1/sc22/wg21/docs/18015.html
要約すると「フルセットのC++でもパフォーマンスに問題なんかねえよ、屑」
0293デフォルトの名無しさん
2009/02/19(木) 09:21:51問題としては >>271,273 が残ってるだけなので、生成時に deleter として
std::default_delete<Y>() を渡しとけば現状のドラフトの記述でも動作保証はできる。
しかし激しくダルイな。
現実としては記述に不備があるだけで、未定義動作の可能性は本来の意図では
無いし実装としても boost のやつを持ってくれば問題ないはずだから、あんまり
心配しなくていいと思う。
0294デフォルトの名無しさん
2009/02/19(木) 18:47:09わざわざそんなドキュメントを出されなくても
フツーに考えたら、C++がパフォーマンスで
劣るハズがないのに。
世間はバカなの?死ぬの?
ECは、パフォーマンス優先なのでrestrict
ポインタを実装必須にするとかなら、
一理あると思うし、覚悟もわかるんだけど。
0295デフォルトの名無しさん
2009/02/19(木) 19:13:46てかEC++はパフォーマンスなんて謳ってたの?
速度なら、例外とnew deleteぐらい、容量なら
templateとinline関数とランタイム。実際には、
それぞれ自前で調整できるからまったく問題ないのは
バカでも解ると思うが。
0296デフォルトの名無しさん
2009/02/19(木) 20:31:53C++を理解してない奴らが作ってたのは明白
0297デフォルトの名無しさん
2009/02/19(木) 20:37:24かわいそうな人。
バカじゃね?
現時点でもパフォーマンスにもんだいあんのによ。
0298デフォルトの名無しさん
2009/02/19(木) 20:37:38でもちゃんと規定しておいてくれないとvectorの連続性保証みたいなことになるからな
はっきり書いてない要件はやっぱり信用できない
たとえ事実上全部の実装がそうなってたとしても
0299デフォルトの名無しさん
2009/02/19(木) 23:16:370300デフォルトの名無しさん
2009/02/19(木) 23:47:390301デフォルトの名無しさん
2009/02/19(木) 23:54:100302デフォルトの名無しさん
2009/02/20(金) 00:13:28なんでわざわざ互換性捨てちゃったんだろうな
0303デフォルトの名無しさん
2009/02/20(金) 00:44:53やたら短い関数名つけて検索性下げるバカとか普通に多いから。
0304デフォルトの名無しさん
2009/02/20(金) 00:45:360305デフォルトの名無しさん
2009/02/20(金) 00:52:470306デフォルトの名無しさん
2009/02/20(金) 09:15:46それは大きなカンチガイ。
このバカ。
0307デフォルトの名無しさん
2009/02/20(金) 10:53:55短かく書ければシンプルであるというわけでもない
0308デフォルトの名無しさん
2009/02/20(金) 11:00:100309デフォルトの名無しさん
2009/02/20(金) 12:22:460310デフォルトの名無しさん
2009/02/20(金) 15:31:51interfaceなんかより遥に便利そうなんだけど何で廃止されかなぁ。
0311デフォルトの名無しさん
2009/02/20(金) 15:32:54逆にループ変数にわざわざcounterとかつけてたり、引数に関数名が入ってたりするアホも見たことがある
0312デフォルトの名無しさん
2009/02/20(金) 15:50:13いや、それは別にいいんでねーの。
最近はディスプレイの解像度も上がったし、MSのインテリセンスに代表されるように、
エディタには補完機能があって便利だし。
変数一覧でiとかcntなんて表示されるよりよほど分かりやすそうだ。
引数に関数名ってのがよくわからんが。
こういうのか?
void hoge( int hoges_first_argument, int hoges_second_argument ) ;
0313デフォルトの名無しさん
2009/02/20(金) 16:14:24ループ変数の方はアホはいい過ぎだったな
0314デフォルトの名無しさん
2009/02/20(金) 16:31:42それはシンプルという言葉から、アインシュタイン言うところの
「単純化せよ。ただし単純化しすぎてもいけない」
の後者のケースばかり思い出すから出てくる反応で、
前者を完全スルーするお前の姿勢がカンチガイってオチじゃないの?
0315デフォルトの名無しさん
2009/02/20(金) 19:56:49アインシュタインはプログラマーか?
つーか、シンプルとか言えたのはアインシュタインが最後だって知ってたか?
このバカ!
0316デフォルトの名無しさん
2009/02/20(金) 20:34:28でさらにある法則に沿って変形していったらsimplicityがmonotonically decreasingになっていってそれを使って機械的にコードを変形して云々
0317デフォルトの名無しさん
2009/02/20(金) 20:34:510318デフォルトの名無しさん
2009/02/20(金) 21:23:400319デフォルトの名無しさん
2009/02/20(金) 21:43:090320デフォルトの名無しさん
2009/02/20(金) 23:17:46concept来たやん
0321デフォルトの名無しさん
2009/02/21(土) 00:14:40InputIterator my_iterator{/*...*/};
とかやって要件満たしてなかったらエラー出してくれるみたいな使い方ができればよかったのに
0322デフォルトの名無しさん
2009/02/21(土) 00:16:330323デフォルトの名無しさん
2009/02/21(土) 00:27:12こんな風になるのかな
class my_iterator{/*...*/};
template<InputIterator T> class InputIteratorChecker{};
static_assert(sizeof(InputIteratorChecker<my_iterator>));
めんどくさくね?
0324デフォルトの名無しさん
2009/02/21(土) 00:29:53主旨だけシンプルに書きましょう。
わめいて逃げてるようにしか見えませんw
0325デフォルトの名無しさん
2009/02/21(土) 00:49:16Only required,
> requires InputIterator
0326デフォルトの名無しさん
2009/02/21(土) 01:02:42それでどうやって簡単に書くんだ?
requiresってテンプレートとコンセプトの中でしか使えないだろ
0327デフォルトの名無しさん
2009/02/21(土) 01:13:26まったく別のsignatureってわけですか?
だったらconcept_map書くしかないですね。
0328デフォルトの名無しさん
2009/02/21(土) 01:18:10auto concept HasFoo<class T>{
void foo();
};
があるときに
HasFoo Hoge{void foo(){}}; //OK
HasFoo Fuga{}; //NG
とかできたらいいなー、というのが>>321の趣旨
0329デフォルトの名無しさん
2009/02/21(土) 02:01:42auto concept HasFoo<>{
void foo();
};
template<> class Hoge {
void foo();
};
template<> concept_map HasFoo<Hoge> {
void foo() {}
};
〜 Hoge<> 〜
でいいのかなあ。
0330デフォルトの名無しさん
2009/02/21(土) 02:14:42やりたいことはただ自作クラスがHasFooコンセプト満たしてるかどうかチェックしたいだけだってのに
チェックするためだけにテンプレート化すんの?
馬鹿げてる
0331デフォルトの名無しさん
2009/02/21(土) 02:23:59template<> class Hoge {
void foo();
requires HasFoo<Hoge>;
};
0332デフォルトの名無しさん
2009/02/21(土) 02:23:59void foo(T);
};
だと、
template<typename T> class Hoge {
requires HasFoo<T> void foo(T) {}
}
って書けるけど。
template<> class Hoge {
requires HasFoo<> void foo() {}
}
はいけるかどうかわからん。もう一回ドラフト読まんと。
0333332
2009/02/21(土) 02:26:50class Hoge {
requires HasFoo<> void foo() {}
}
これは駄目だった。
>>331
ああそだね。
0334デフォルトの名無しさん
2009/02/21(土) 02:28:05それ以前の問題として
HasFooは簡単なコンセプトだからいいけど
これがもし10個の型名と20個の関数を要求するコンセプトだったら
Hogeの型名と関数全部にそのrequires付けて回る気か?
>>323の方が楽だわ
0335デフォルトの名無しさん
2009/02/21(土) 02:31:08class Hoge {
void foo();
requires HasFoo<Hoge>;
};
0336デフォルトの名無しさん
2009/02/21(土) 02:44:180337デフォルトの名無しさん
2009/02/21(土) 02:45:250338デフォルトの名無しさん
2009/02/21(土) 03:30:09void foo();
};
こう書かせろよ。めんどくさいな
0339デフォルトの名無しさん
2009/02/21(土) 03:53:18配列で使えんやん
0340デフォルトの名無しさん
2009/02/21(土) 08:56:53class Hoge requires HasFoo {
void foo();
};
ならあり得るかも。
0341デフォルトの名無しさん
2009/02/21(土) 12:08:31concept_map ?
0342デフォルトの名無しさん
2009/02/21(土) 18:07:11concept_mapってsignatureのようなことできる様になるの?
便利やね。
struct A
{
//・・・
void Method();
};
struct B
{
//・・・
void Method():
};
signature Sig
{
void Method();
};
Sig array[]={new A(),new B()};//継承関係の無いオブジェクトを代入
array[0].Method();//それぞれ正しいメンバーが呼び出される
0343デフォルトの名無しさん
2009/02/21(土) 20:13:06これって自分何か勘違いしてますか?VC9のバグってことはありませんか?
struct MyClass {
int value;
void set_value(int v) { value = v; }
int get_value(void) const { return value; }
};
vector<shared_ptr<MyClass> > v;
...vに適当に要素を入れる...
for_each(v.begin(), v.end(), bind(&MyClass::set_value, _1, bind(&MyClass::get_value, _1))); // 駄目子ちゃん
0344343
2009/02/21(土) 20:14:240345343
2009/02/21(土) 20:21:130346デフォルトの名無しさん
2009/02/22(日) 15:49:240347デフォルトの名無しさん
2009/02/22(日) 17:01:380348デフォルトの名無しさん
2009/02/22(日) 17:47:070349デフォルトの名無しさん
2009/02/22(日) 18:35:28class Einstein *Albert=BangEinstein();
0350デフォルトの名無しさん
2009/02/22(日) 18:55:220351デフォルトの名無しさん
2009/02/22(日) 19:19:110352デフォルトの名無しさん
2009/02/23(月) 10:05:150353デフォルトの名無しさん
2009/02/23(月) 19:54:440354デフォルトの名無しさん
2009/02/23(月) 23:39:28抽象的な言い方では判らないよ
0355デフォルトの名無しさん
2009/02/24(火) 00:23:27当然ポインタから->を通して呼ぶこともできるべきだよな、C++的に考えて
ここから思いつく面倒ごとに思いを馳せれば現実的じゃないという結論には簡単にたどり着く
0356デフォルトの名無しさん
2009/02/24(火) 05:30:40テンプレートメンバ関数の特殊化と同じような方法で実装すればいいんじゃね?
あれも新しいメンバ関数をクラスの定義の外で作ってるわけだし。
0357デフォルトの名無しさん
2009/02/24(火) 10:13:33p->>func() を func(p) の糖衣構文として扱うとかそんなんでいいんだが
0358デフォルトの名無しさん
2009/02/24(火) 10:17:34特殊化はシグネチャを変えているわけじゃない。
0359デフォルトの名無しさん
2009/02/24(火) 15:44:17->* とか?
でも (p->*func)() みたいに括弧が必須なのが面倒。
0360デフォルトの名無しさん
2009/02/24(火) 18:49:01肛門を指してるように見えた俺は逝ったほうがいいんだろうな orz
0361デフォルトの名無しさん
2009/02/24(火) 19:02:120362デフォルトの名無しさん
2009/02/24(火) 22:53:49拡張メソッドのメリットって何?
0363デフォルトの名無しさん
2009/02/25(水) 01:13:23むしろ梅干し食べてる感じ
0364デフォルトの名無しさん
2009/02/25(水) 03:35:03難しく考えすぎ
普通に第一引数がthisでそれ以外が普通の関数の定義と同じようになるようにすれば良い。
たとえば
class foo {}; // 定義
class foo { int bar(int baz) { return baz; } }; // 拡張メソッド(C#風)
って書いたら
int foo_extended_method_bar(foo* this, int baz) { return baz;}
って書くのと同じようになるようにすればいい。
でも継承したらどうなるかとかは知らん
>>362
使ったこと無いからわかんないなぁ
rubyのサンプルコードで良く見るけど
0365デフォルトの名無しさん
2009/02/25(水) 09:00:55なにその生産性の低い記述は。
0366デフォルトの名無しさん
2009/02/25(水) 09:13:32あんまりいい例じゃないけど、なんでこの行列クラス、固有値求められないんだよ…ってときに:
#include "matrix"
// class Matrix;
#include "eigenvalues"
// vector<double> eigenvalues(const Matrix& this);
Matrix m;
auto es = m.eigenvalues(); // eigenvalues(m); と同等
Matrix* pm;
pm->eigenvalues(); // eigenvalues(*pm);
0367デフォルトの名無しさん
2009/02/25(水) 11:11:44ただC++だと例外を軽く使えないからエラー処理をどうしようってことでMaybeモナドが欲しくなる
0368デフォルトの名無しさん
2009/02/25(水) 12:10:37例が悪すぎます
0369デフォルトの名無しさん
2009/02/25(水) 12:45:38Matrixをテンプレートの型パラメータで渡したときなんか拡張メソッドの定義includeの読み込み順で拡張メソッドが適用されたりされなかったりするのかな
0370デフォルトの名無しさん
2009/02/25(水) 15:11:170371デフォルトの名無しさん
2009/02/25(水) 19:56:06現状のSTLも遅いし。
0372デフォルトの名無しさん
2009/02/25(水) 20:06:190373デフォルトの名無しさん
2009/02/25(水) 22:40:520374デフォルトの名無しさん
2009/02/25(水) 23:12:400375デフォルトの名無しさん
2009/02/25(水) 23:15:330376デフォルトの名無しさん
2009/02/25(水) 23:47:580377デフォルトの名無しさん
2009/02/26(木) 01:09:52それが問題なんでねぇかい
テンプレートメンバ関数はその辺上手く逃げたよなぁ
0378デフォルトの名無しさん
2009/02/26(木) 05:05:590379デフォルトの名無しさん
2009/02/26(木) 11:52:07kwsk
0380デフォルトの名無しさん
2009/02/26(木) 13:18:24obj.func(args) を func(obj, args) と字面上同義みなすってことでは?
0381デフォルトの名無しさん
2009/02/26(木) 13:20:170382デフォルトの名無しさん
2009/02/26(木) 13:35:210383デフォルトの名無しさん
2009/02/26(木) 13:39:08virtualにならないんだし。
0384デフォルトの名無しさん
2009/02/26(木) 13:44:280385デフォルトの名無しさん
2009/02/26(木) 18:48:11まずオブジェクト名から入力できるとインテリセンスとかで楽できるんだよね
候補が狭まるから
0386デフォルトの名無しさん
2009/02/26(木) 20:08:430387デフォルトの名無しさん
2009/02/26(木) 22:52:270388デフォルトの名無しさん
2009/02/26(木) 22:56:030389デフォルトの名無しさん
2009/02/26(木) 23:18:240390デフォルトの名無しさん
2009/03/15(日) 11:12:390391デフォルトの名無しさん
2009/03/15(日) 12:53:17この前、時間が作れたんでようやくmailing2009-02を少し読めた。
久々の単独署名のDouglas Gregorの"Concepts and Ref-qualifiers"、
いやーやはりRvalue Referencesは難しいですね。
それからDouglas GregorってAppleに就職したんだな。(2008/10)
古くはIOKit、今はWebKitとC++結構使ってるからな。
0392デフォルトの名無しさん
2009/03/15(日) 15:36:140393デフォルトの名無しさん
2009/03/15(日) 15:46:120394デフォルトの名無しさん
2009/03/15(日) 15:47:12やめてほしいけど
0395デフォルトの名無しさん
2009/03/15(日) 15:50:09それがなかったとしても十分09に間に合いそうもないが。
0396デフォルトの名無しさん
2009/03/15(日) 16:03:260397デフォルトの名無しさん
2009/03/15(日) 16:24:56auto concept HasAssign<typename T, typename U> {
typename result_type;
result_type T::operator=(U) &; // ←Rvalue reference!
}
ワロス
0398デフォルトの名無しさん
2009/03/15(日) 18:27:340399デフォルトの名無しさん
2009/03/15(日) 21:34:430400デフォルトの名無しさん
2009/03/15(日) 21:56:240401デフォルトの名無しさん
2009/03/15(日) 22:44:530402デフォルトの名無しさん
2009/03/21(土) 14:58:40気になる。現行のSTLやBoostですらコンパイルエラー、ワーニングが長すぎて
解読困難なのに、これ以上になるのかと思うと気が重くなる。
0403デフォルトの名無しさん
2009/03/21(土) 14:59:110404デフォルトの名無しさん
2009/03/21(土) 15:03:060405デフォルトの名無しさん
2009/03/21(土) 15:03:38「まずはまともな処理系を出してくれ、話はそれからだ」
だからな
WGにいる仕様書だけでコードを書いてあーだこーだ議論してる奴等は化け物に思えてくる
0406デフォルトの名無しさん
2009/03/21(土) 15:06:55一般的な開発者がその恩恵を受けられるのは、
どんなに早くても2012年頃かと思われますw
0407デフォルトの名無しさん
2009/03/21(土) 15:12:330408デフォルトの名無しさん
2009/03/21(土) 17:13:32可読性を良くする機能はことごとく後回しにされてるけどな
0409デフォルトの名無しさん
2009/03/21(土) 17:16:56TEMPL1(X)
TEMPL2(X1, X2)
TEMPL3(X2, X2, X3)
:
TEMPL20(X1, X2, X3 .. X20)
とかもうイヤだよ。
0410デフォルトの名無しさん
2009/03/21(土) 17:24:11エラーメッセージは多分もっとわかりにくくなるだろうし
0411デフォルトの名無しさん
2009/03/21(土) 17:27:25後回しにされてる機能って何のこと言ってるの?
0412409
2009/03/21(土) 17:29:11そりゃまあ一般論としてはそうかな。
ただ俺は馬鹿だからか、機械生成しなかったのが悪いのか、
5引数のやつだけ書き間違えて大填まりしたことあるわ。
気づくわけないっての
0413デフォルトの名無しさん
2009/03/25(水) 03:24:35News 2009-03-24: The 2009-03 post-Summit mailing is available
News 2009-03-24: The C++ Standard Core Language Issues List (Revision 62) is available
News 2009-03-24: The C++ Standard Library Issues List (Revision 63) is available
0414デフォルトの名無しさん
2009/03/25(水) 12:21:540415デフォルトの名無しさん
2009/03/25(水) 18:44:11ラムダ関係がボロボロで全面書き直しって事くらいか
あと日本からのコメントrejectされまくり
0416デフォルトの名無しさん
2009/03/26(木) 21:07:56型名書くのだりーよ…
結局 Boost.Lambda のほうが便利じゃんってオチ?
0417デフォルトの名無しさん
2009/03/27(金) 05:20:03何言ってるのかわからん。 Boost.Lambda のどんな用法のことを言ってるの?
C++0x のラムダ式で置きかえらない用法があるってことなんだよね?
0418デフォルトの名無しさん
2009/03/27(金) 08:58:21単に引数の型書くのが面倒という話では?
_1 + 1
[] (int n) { return n + 1; }
もともともラムダ式の提案では引数の型を指定しないでよいものも込みだったんだけど、
分割して型を指定するものだけ先に持ってきたのが Monomorphic なラムダ式のはず。
0419デフォルトの名無しさん
2009/03/27(金) 09:13:540420デフォルトの名無しさん
2009/03/27(金) 11:06:48Boost.Lambda は多相じゃん。
(_1 + _2)(1, 1) // -> int 2
(_1 + _2)(1.0, 1.0) // -> double 2.0
単相にして保持したければ
function<double(double, double)> f = (_1 + _2);
f(1, 1) // double 2.0
とかもできるし。
ちょっと調べてみたら n2529 で、
(n2329 にあるように higher implementation cost なんで)
"We do not propose generic lambda functions for C++0x."
って書いてあるな… これはダメっぽい。
0421デフォルトの名無しさん
2009/03/27(金) 12:35:25まだまだboostの役目は終わらないということだな
0422デフォルトの名無しさん
2009/03/27(金) 17:45:45結局みんなboostを使い続け、std名前空間を汚染するゴミが残るだけという
0423デフォルトの名無しさん
2009/03/28(土) 14:18:37日本の総意ってことで
0424デフォルトの名無しさん
2009/03/29(日) 10:22:55( ゚д゚)
0425デフォルトの名無しさん
2009/03/30(月) 13:50:220426デフォルトの名無しさん
2009/03/30(月) 19:48:550427デフォルトの名無しさん
2009/03/30(月) 19:54:200428デフォルトの名無しさん
2009/03/30(月) 19:55:43cout<<boolalpha<<uppercase<<true;
ってした場合でも、TRUE(大文字)とは出力されないんだっけ?
それで規格どおり?
0429デフォルトの名無しさん
2009/03/30(月) 20:14:51そんなこともないだろ。両方関数だし。
0430デフォルトの名無しさん
2009/03/30(月) 20:16:110431デフォルトの名無しさん
2009/03/30(月) 20:22:42Cとかの関数は、それから来ている名前ではあるけど、(サブ)ルーチンのことを
そう呼んでるだけ。たまに数学的な関数のような性質を持ってることもある。
0432デフォルトの名無しさん
2009/03/30(月) 21:42:56いや>>426は「関数型言語における関数と、C/C++における関数」の性質の違いを
知りたがっているのではなくて、「関数型言語」と「C/C++の関数」の関係を知りたがってる。
葉巻型UFOと日本たばこ産業の関係を質問するくらい、わけのわからない質問ではあるが。
0433デフォルトの名無しさん
2009/03/30(月) 22:04:53>たまに数学的な関数のような性質を持ってることもある。
ん?どう違うの?
0434デフォルトの名無しさん
2009/03/30(月) 22:20:250435デフォルトの名無しさん
2009/03/30(月) 22:25:300436デフォルトの名無しさん
2009/03/30(月) 22:27:550437デフォルトの名無しさん
2009/03/30(月) 22:41:34基本的には Yes.
ただし、状態も副作用もない関数を書くとしても、
手続き的な考え方だとローカル変数を値を変えながらループして計算したりするのに対し、
関数型言語的な考え方だとローカル変数に一度束縛したら値を変えず、ループのかわりに再帰とか集合演算とかを使う。
そこらへんの美学の違いは理解すべきかな。
0438デフォルトの名無しさん
2009/03/30(月) 23:44:29真偽値を表す文字列をnumpunctから取得して、
ストリームへ「インサートする」って書いてあるから、
uppercaseは適用されないね。
取得した文字列を再度operator<<するわけじゃないから。
0439デフォルトの名無しさん
2009/03/30(月) 23:46:0122.2.8.13に例が挙げてある。
0440デフォルトの名無しさん
2009/03/31(火) 09:00:200441デフォルトの名無しさん
2009/03/31(火) 10:01:210442デフォルトの名無しさん
2009/03/31(火) 16:41:020443428
2009/03/31(火) 19:51:14ありがと。
規格の該当パラグラフも確認しました。
locale関連になっちゃうのね。。。
そのあたりの深入りは避けたいので、簡単に文字列として
出力しようと思いますた。
0444デフォルトの名無しさん
2009/03/31(火) 20:30:21結局、os << b ? "TRUE" : "FALSE";を関数にまとめればいいやというとこに落ち着いちゃうんだよね。
0445438
2009/04/02(木) 17:10:08マイ書式には引数付きマニュピュレーター使って
その中で出力しちゃってる。
けどこれC++0xの話題じゃないじゃんw
0446デフォルトの名無しさん
2009/04/02(木) 18:39:320447デフォルトの名無しさん
2009/04/02(木) 23:27:370448428
2009/04/03(金) 21:06:55あー、たしかにマニピュレータはよさそう。
また機会があったらオレもそうしよ。
>けどこれC++0xの話題じゃないじゃんw
そうだった。w
でも、C++で規格ガチの話ってこのスレが一番じゃね?
0449デフォルトの名無しさん
2009/04/04(土) 00:34:14C++相談室でいいよ。だいたい規格ガチで文句言われるスレなんてないだろ。
0450デフォルトの名無しさん
2009/04/04(土) 15:20:150451デフォルトの名無しさん
2009/04/05(日) 01:16:110452デフォルトの名無しさん
2009/04/05(日) 01:21:450453デフォルトの名無しさん
2009/04/05(日) 02:50:540454デフォルトの名無しさん
2009/04/05(日) 03:45:10Unicode関係とか結構気合い入れて議論してたんじゃないの?
サックリrejectされてて笑ったが
0455デフォルトの名無しさん
2009/04/05(日) 16:09:19かなり基本的な部分でUTF-8前提にしろとかもうアホかと。
0456デフォルトの名無しさん
2009/04/05(日) 17:24:29ビャーネ・ストロヴストルップ(Bjarne Stroustrup, 1950年6月11日 - )は、
デンマークのオーフス生まれのコンピュータ科学者。
本人による自身の名前の発音は「びよーねすっぽすっぽ」に近い。
0457デフォルトの名無しさん
2009/04/05(日) 20:12:24ttp://www.research.att.com/~bs/pronounciation.wav
どのへんが近いんだ?
0458デフォルトの名無しさん
2009/04/05(日) 20:34:260459デフォルトの名無しさん
2009/04/05(日) 20:41:390460デフォルトの名無しさん
2009/04/05(日) 23:11:55無理なものは無理と委員会で止めるべきだった
0461デフォルトの名無しさん
2009/04/06(月) 01:07:29JPだけ変な気合い入れて新機能の提案みたいなことしてて明らかに浮いてる
恥ずかしいわ
0462デフォルトの名無しさん
2009/04/06(月) 01:09:30みんな言いたいこと言ってる
0463デフォルトの名無しさん
2009/04/06(月) 04:26:23strou と strup の間の「っ」(stød) で声門を絞めるのが肝
0464デフォルトの名無しさん
2009/04/06(月) 09:22:45つーか読みにくい時は、呼び名つけるだろ?
てきとうに、太郎とかつけりゃいいんだよ。
0465デフォルトの名無しさん
2009/04/06(月) 09:46:580466デフォルトの名無しさん
2009/04/06(月) 10:19:550467デフォルトの名無しさん
2009/04/06(月) 10:35:34ほんとだ、「びや〜ね=すぽっすぽっ」に聞こえる。
0468デフォルトの名無しさん
2009/04/06(月) 14:42:260469デフォルトの名無しさん
2009/04/06(月) 18:44:450470デフォルトの名無しさん
2009/04/07(火) 15:54:36またCさえあればいい時代が来るってことか
0471デフォルトの名無しさん
2009/04/07(火) 18:39:090472デフォルトの名無しさん
2009/04/07(火) 19:16:450473デフォルトの名無しさん
2009/04/08(水) 04:33:230474デフォルトの名無しさん
2009/04/08(水) 06:13:38Delphiですね、わかります
0475デフォルトの名無しさん
2009/04/08(水) 08:57:43F# vs Scala
C++ vs D…いやなんでもない
0476デフォルトの名無しさん
2009/04/08(水) 10:49:00おまいらとは別スレであってるような気がしてならない
0477デフォルトの名無しさん
2009/04/08(水) 12:02:15http://twitter.com/finalfusion/status/1469586480
0478インドリ
2009/04/09(木) 10:06:39http://d.hatena.ne.jp/faith_and_brave/20090408
0479デフォルトの名無しさん
2009/04/09(木) 13:49:35高い!
0480デフォルトの名無しさん
2009/04/09(木) 14:23:510481デフォルトの名無しさん
2009/04/09(木) 17:17:02そうなったら眺めてみるか
0482デフォルトの名無しさん
2009/04/09(木) 17:31:410483デフォルトの名無しさん
2009/04/09(木) 17:37:080484デフォルトの名無しさん
2009/04/10(金) 00:19:14誰も名前だとは気づかないな
0485デフォルトの名無しさん
2009/04/10(金) 00:44:38邦人の著者は入門レベルでお茶濁すパターンの繰り返しだからねぇ
0486デフォルトの名無しさん
2009/04/10(金) 01:18:06「びよーん」じゃないよ「びや〜ね」だよ。
0487デフォルトの名無しさん
2009/04/10(金) 01:49:460488デフォルトの名無しさん
2009/04/10(金) 02:01:02中身は校正不足な教科書崩れですタ
みたいな
0489デフォルトの名無しさん
2009/04/10(金) 02:16:060490デフォルトの名無しさん
2009/04/10(金) 02:39:240491デフォルトの名無しさん
2009/04/10(金) 12:08:520492デフォルトの名無しさん
2009/04/10(金) 14:04:270493デフォルトの名無しさん
2009/04/10(金) 19:13:34つ 規格書
0494デフォルトの名無しさん
2009/04/10(金) 20:34:270495デフォルトの名無しさん
2009/04/12(日) 03:56:210496デフォルトの名無しさん
2009/04/14(火) 20:39:550497デフォルトの名無しさん
2009/04/15(水) 00:29:40( ・ω・)
○={=}〇,
|:::::::::\, ', ´
.wwし w`(.@)wwwwwwwwwwwwwww
~~~~~
0498デフォルトの名無しさん
2009/04/15(水) 00:33:54これって次で直るかなぁ? 演算子の優先度の問題だから無理だよな・・・?
0499デフォルトの名無しさん
2009/04/15(水) 00:39:49C++0xでは vector<vector<int>> も大丈夫
0500デフォルトの名無しさん
2009/04/15(水) 02:19:16これな
gcc 4.3では取り込まれてる
0501デフォルトの名無しさん
2009/04/15(水) 02:20:570502デフォルトの名無しさん
2009/04/15(水) 23:37:363つ以上入れ子にすると逆に見づらいというか、typedefつかえってことか。
0503デフォルトの名無しさん
2009/04/16(木) 01:44:570504デフォルトの名無しさん
2009/04/16(木) 01:55:510505デフォルトの名無しさん
2009/04/16(木) 12:48:27javaや.netよりかなり遅くなるぞ。
0506デフォルトの名無しさん
2009/04/16(木) 12:50:070507デフォルトの名無しさん
2009/04/16(木) 17:40:230508デフォルトの名無しさん
2009/04/16(木) 18:14:570509デフォルトの名無しさん
2009/04/16(木) 18:32:550510デフォルトの名無しさん
2009/04/16(木) 18:34:26でもMPLでもやらない限りテンプレートはあまり関係ないと思うけどね
0511デフォルトの名無しさん
2009/04/16(木) 19:47:040512デフォルトの名無しさん
2009/04/16(木) 21:35:250513デフォルトの名無しさん
2009/04/16(木) 21:36:150514デフォルトの名無しさん
2009/04/16(木) 21:42:460515デフォルトの名無しさん
2009/04/17(金) 02:17:16バカなのか?お前らは。
0516デフォルトの名無しさん
2009/04/17(金) 04:37:530517デフォルトの名無しさん
2009/04/17(金) 06:16:190518デフォルトの名無しさん
2009/04/17(金) 08:47:380519デフォルトの名無しさん
2009/04/17(金) 10:02:290520デフォルトの名無しさん
2009/04/17(金) 10:15:20)'ーーノ( | | | 、 / l| l ハヽ |ー‐''"l
/ M | | |/| ハ / / ,/ /|ノ /l / l l l| l M ヽ
l ・ i´ | ヽ、| |r|| | //--‐'" `'メ、_lノ| / ・ /
| P l トー-トヽ| |ノ ''"´` rー-/// | P |
| ・ |/ | l ||、 ''""" j ""''/ | |ヽl ・ |
| L | | l | ヽ, ― / | | l L |
| !! | / | | | ` ー-‐ ' ´|| ,ノ| | | !! |
ノー‐---、,| / │l、l |レ' ,ノノ ノハ、_ノヽ
/ / ノ⌒ヾ、 ヽ ノハ, |
,/ ,イーf'´ /´ \ | ,/´ |ヽl |
/-ト、| ┼―- 、_ヽメr' , -=l''"ハ | l
,/ | ヽ \ _,ノーf' ´ ノノ ヽ | |
、_ _ ‐''l `ー‐―''" ⌒'ー--‐'´`ヽ、_ _,ノ ノ
 ̄ ̄ | /
プロプロセッサ・メタプログラミングもお忘れなく。
0521デフォルトの名無しさん
2009/04/17(金) 11:00:58メタなんて価値なしのオナニーだよな。
0522デフォルトの名無しさん
2009/04/17(金) 11:06:510523デフォルトの名無しさん
2009/04/17(金) 17:18:26そしたら、ワザワザJavaに書き換える事もなくなって便利なんだが。
ところで、いつのまにやら入れ子クラスから外のクラスにアクセス
出きるようになったんだな。BCC5.5だったか、CL8.0だったか
対応してなくて、ずっとそういうもんだと思い込んでfriend使ってたわ。
0524デフォルトの名無しさん
2009/04/17(金) 17:49:55なるよ。
0525デフォルトの名無しさん
2009/04/18(土) 01:38:10いまどき遅いといっても知れてるわ。
0526デフォルトの名無しさん
2009/04/18(土) 02:31:070527デフォルトの名無しさん
2009/04/18(土) 04:00:06とはいえ、vectorを三つも入れ子にするようなコードが
数えられる程度にしか回らないケースって少ないような気もするけどな
0528デフォルトの名無しさん
2009/04/18(土) 08:28:02馬鹿馬鹿しいからスルー推奨
0529デフォルトの名無しさん
2009/04/18(土) 10:49:30知恵遅れはお前だろカスだな。
0530デフォルトの名無しさん
2009/04/18(土) 12:17:110531デフォルトの名無しさん
2009/04/18(土) 12:35:00サイズ変更は起こらないケースで
0532デフォルトの名無しさん
2009/04/18(土) 13:05:020533デフォルトの名無しさん
2009/04/18(土) 13:12:480534デフォルトの名無しさん
2009/04/18(土) 13:19:000535デフォルトの名無しさん
2009/04/18(土) 13:21:05別物なんですか?どう違うんですか?
0536デフォルトの名無しさん
2009/04/18(土) 13:21:590537デフォルトの名無しさん
2009/04/18(土) 13:41:32でも要素を指すポインタの配置だとかの制限が多々あって、
vectorの内部構造は配列を使うことが多い。
その場合、最適化次第で配列とほぼ同じ速度で動かせる。
0538デフォルトの名無しさん
2009/04/18(土) 15:02:39たいていの場合はまったく同じ速度で動かせる、のが正しいだろ
なんだよほぼ同じ速度ってw
0539デフォルトの名無しさん
2009/04/18(土) 15:04:190540デフォルトの名無しさん
2009/04/18(土) 15:12:03vectorは連続性が保証されているから、&[0]で先頭アドレスを取って配列として使うなら、配列と同速度であろうことは想像できる。
ただ、配置される場所がヒープかスタックによっても速度は変わるかもしれない。
0541デフォルトの名無しさん
2009/04/18(土) 15:19:17何でもアホみたく実測する前に、一般論で考察しろ。
0542デフォルトの名無しさん
2009/04/18(土) 15:27:11様々なプラットフォームで実測して、場合によっては最適な実装を
コンパイラスイッチで切り替えるぐらいはしてもいいんじゃない。
一般論で考察して済むようなら、最初から速度が問題になるような箇所じゃないってことだよ。
0543デフォルトの名無しさん
2009/04/18(土) 15:29:400544デフォルトの名無しさん
2009/04/18(土) 15:34:520545デフォルトの名無しさん
2009/04/18(土) 17:06:23なんちゃってー!カクカクカクカクカク!
0546デフォルトの名無しさん
2009/04/18(土) 17:12:510547デフォルトの名無しさん
2009/04/18(土) 19:31:450548デフォルトの名無しさん
2009/04/18(土) 23:16:36保証されてない
0549デフォルトの名無しさん
2009/04/18(土) 23:18:400550デフォルトの名無しさん
2009/04/18(土) 23:26:03後から委員会のほうで「そういう風に作ってね」って付け加えたんだっけか。
いずれにしても現在では保証されてたはず。
0551デフォルトの名無しさん
2009/04/19(日) 01:17:23> The elements of a vector are stored contiguously, meaning that if v is
> a vector<T, Allocator> where T is some type other than bool, then it
> obeys the identity &v[n] == &v[0] + n for all 0 <= n < v.size().
と明記されているのでれっきとした仕様です。1998年版にはありませんでした。
0552デフォルトの名無しさん
2009/04/19(日) 01:42:29どっちにしろ入れ子にしなきゃならんものは、Cで書いてもそれなりに重い処理になる。
ということは、使った方が手軽で安全ということになるな。
0553デフォルトの名無しさん
2009/04/19(日) 02:34:15ムーブセマンティクスがどう効くかとかarrayと比べてどうとかいう話かと思ったのに
03以前だけの話ならSTLスレでやれよ
0554デフォルトの名無しさん
2009/04/19(日) 03:44:12>>540
保証されてない
0555デフォルトの名無しさん
2009/04/19(日) 09:32:40それはないだろ。
0556デフォルトの名無しさん
2009/04/19(日) 14:49:10vectorってムーブセマンティクスやCOW
の実装あるんだっけ?
0557デフォルトの名無しさん
2009/04/19(日) 18:23:470558デフォルトの名無しさん
2009/04/19(日) 21:42:09C++0xってx=9になるの?
それともなんかしくじって、
C++1xに続くの?
0559デフォルトの名無しさん
2009/04/19(日) 21:57:410560デフォルトの名無しさん
2009/04/19(日) 22:02:110561デフォルトの名無しさん
2009/04/19(日) 22:10:10八進数なのに9はない。
0562デフォルトの名無しさん
2009/04/19(日) 22:20:41K&Rもビット演算で八進数使うんだよね。
二進数と十六進数しかなじみのなかった自分は
ちょっとデカルチャーだった。
0563デフォルトの名無しさん
2009/04/19(日) 22:32:060564デフォルトの名無しさん
2009/04/19(日) 23:51:30後はもう分かるな?
0565デフォルトの名無しさん
2009/04/20(月) 00:10:430566デフォルトの名無しさん
2009/04/20(月) 00:48:320567デフォルトの名無しさん
2009/04/20(月) 04:06:370568デフォルトの名無しさん
2009/04/20(月) 08:23:01無理矢理解釈で2010年リリースか?
0569デフォルトの名無しさん
2009/04/20(月) 09:06:44だから昔の人は基本8進数と10進数。
古いアセンブラの仕様を漁れば分かる。
0570デフォルトの名無しさん
2009/04/20(月) 09:35:470571デフォルトの名無しさん
2009/04/20(月) 09:47:51標準化まえのCの処理系では'\91'(=73)とかできたらしい。
0572デフォルトの名無しさん
2009/04/20(月) 23:35:57char get(char k){
static char f=0;
if(k==9){f=8;return 16}
if(k==8){f=0;return 16}
if(k>=0&&k<=7) return k|f;
つらつら;
}
0573デフォルトの名無しさん
2009/04/21(火) 03:28:00歴史も現場も知らない人間の机上の発想だな。同様のことを考えた人はいたかもしれんが表に出て主流になることはなかった、ってのはそういうことだ。
0574デフォルトの名無しさん
2009/04/21(火) 03:50:52まぁ、>569はどうかと思うけれど。
0575デフォルトの名無しさん
2009/04/21(火) 08:01:020576デフォルトの名無しさん
2009/04/21(火) 08:11:18携帯のせいでテンキー的なものを強要されるようになったな。
0577デフォルトの名無しさん
2009/04/21(火) 08:15:48ローマに0はなかった…
0578デフォルトの名無しさん
2009/04/21(火) 11:22:50やっぱりテレビのチャンネルを変えるときは本体のを回したりするんですね
0579デフォルトの名無しさん
2009/04/21(火) 12:38:39「回す」って言うらしいぞ。
0580デフォルトの名無しさん
2009/04/21(火) 18:19:48当時は逆にテンキーがなかったんじゃ。
タイプライターにはテンキーなんかないし、
今と違ってスイッチいっこが高かった
だろうし。
8進数のいいわけはなんかで見た記憶が
ある。古いCかUNIXかの本だったか。
0581デフォルトの名無しさん
2009/04/21(火) 18:30:000582デフォルトの名無しさん
2009/04/21(火) 18:42:280583576
2009/04/21(火) 21:01:55携帯やパソコンのテンキーは少なくとも一秒に3タイプくらいは出来ないと効率悪すぎるし、
テレビのリモコンは30分に1タイプできれば十分事足りるからな。
それとこれとは話が全然違うだろうとマジレスしておく。
0584デフォルトの名無しさん
2009/04/21(火) 21:05:270585デフォルトの名無しさん
2009/04/21(火) 21:33:040586デフォルトの名無しさん
2009/04/21(火) 22:58:32大丈夫、マイコンキットならきっと16キーだ。
0587デフォルトの名無しさん
2009/04/22(水) 03:42:50マジレスするとインストラクションの基本形式が
16bit を 1+3, 3+3, 3+3 に分解して使ってたから
octal の方が表現しやすかった.
0588デフォルトの名無しさん
2009/04/22(水) 13:40:150589デフォルトの名無しさん
2009/04/22(水) 15:18:380590デフォルトの名無しさん
2009/04/22(水) 15:50:010591デフォルトの名無しさん
2009/04/22(水) 15:50:110592デフォルトの名無しさん
2009/04/24(金) 12:57:240593デフォルトの名無しさん
2009/04/24(金) 14:22:27インドに行って来い
0594デフォルトの名無しさん
2009/04/24(金) 14:27:580595デフォルトの名無しさん
2009/04/24(金) 14:38:46そして、なんと小学校の必須科目に「プログラム」があるそうだ。
しかし、インドはカースト制度のせいで
奴隷同然の生活を送っている子供たちも多数。
0596デフォルトの名無しさん
2009/04/24(金) 15:54:330597デフォルトの名無しさん
2009/04/24(金) 17:22:190598デフォルトの名無しさん
2009/04/24(金) 18:58:520599デフォルトの名無しさん
2009/04/24(金) 22:16:570600デフォルトの名無しさん
2009/04/24(金) 23:44:59サンスクリット語は数体系が複雑すぎて、
99×99まで暗記しないとろくに計算できないというのが実情らしいけど。
日本語みたいに、21を素直に「2 じゅう 1」って読めない。
0601デフォルトの名無しさん
2009/04/25(土) 00:10:51どうやらそのようだな。
100まで暗記が必要らしい。
ttp://www.sf.airnet.ne.jp/~ts/language/number/hindij.html
0602デフォルトの名無しさん
2009/04/25(土) 01:04:42実際を見ると、言葉が使いにくいからやむなく覚えてる
それなんてC++?
0603デフォルトの名無しさん
2009/04/25(土) 11:21:54学問に向いてないのとで、大学では英語でしょ?
小学校でも英語の授業があるらしいし。
0604デフォルトの名無しさん
2009/04/25(土) 11:30:31ネイティブにはそれくらいあんまり気にならないと思うけどなぁ
0605デフォルトの名無しさん
2009/04/25(土) 11:48:50例えばフランス語の99の読み上げを直訳すると、「4つの20と9足した10」になるらしい。
一方、日本語はエスペラントに準じて綺麗な読み上げ方をする言語なんだけどね。
0606デフォルトの名無しさん
2009/04/25(土) 12:54:4899 は 4つの20と10-9 だとおもう (quatre-vingts-dix-neuf.)
93 とかのほうがひどい。(quartre-vingts-treize は 4x20+"3+10".)
フランス語地域でもスイス/ベルギーは nonante-neuf,
nonante-cinq に変えたはず。
0607デフォルトの名無しさん
2009/04/25(土) 15:18:03数システムが複雑な言語では、暗算できない子供が多いみたいな統計もあるらしいけど。
フランス語もその筆頭。
0608デフォルトの名無しさん
2009/04/25(土) 17:00:19手紙もまともにかけないという現状を憂慮して
簡体字を導入したように、
おフランスも暗算が簡単になるように数字の読みを
国策で変更すべき^^
インドは小学校の授業にプログラムを導入するに当たって
理解しやすい独自の言語を開発したそうな。
0609デフォルトの名無しさん
2009/04/25(土) 20:02:260610デフォルトの名無しさん
2009/04/25(土) 20:59:30>>608
繁体字のままの台湾との比較の論文があればみてみたい。
>>609
そろばん塾に行ってれば、三桁x三桁の掛け算は暗算で出来る。
0611デフォルトの名無しさん
2009/04/25(土) 21:48:32おもしろい。
0612デフォルトの名無しさん
2009/04/25(土) 23:23:56正式版が出たgcc4.4のc++0x対応の話とか出てないのかwwww
0613デフォルトの名無しさん
2009/04/26(日) 00:21:40なんじゃこりゃ
0614デフォルトの名無しさん
2009/04/26(日) 00:29:470615デフォルトの名無しさん
2009/04/26(日) 00:42:560616デフォルトの名無しさん
2009/04/26(日) 03:42:10http://gcc.gnu.org/gcc-4.4/cxx0x_status.html
0617デフォルトの名無しさん
2009/04/26(日) 09:35:14Variadic templateは既に使ってるけど。4.4の前からあるからね。
0618デフォルトの名無しさん
2009/04/26(日) 12:42:34http://gcc.gnu.org/projects/cxx0x.html
・auto
・Initializer list
・Unicode文字型&リテラル
・enum class
・メンバ関数のdefault/delete指定
あたりが大きい追加かな
とうとうauto main(int argc, char *argv[]) -> int とか書けるようになってしまった
0619デフォルトの名無しさん
2009/04/26(日) 18:39:03http://2sen.dip.jp/cgi-bin/upgun/up1/source/up26459.jpg
0620デフォルトの名無しさん
2009/04/26(日) 18:40:500621デフォルトの名無しさん
2009/04/26(日) 18:45:510622デフォルトの名無しさん
2009/04/26(日) 19:09:570623デフォルトの名無しさん
2009/04/26(日) 19:16:270624デフォルトの名無しさん
2009/04/26(日) 19:44:380625デフォルトの名無しさん
2009/04/26(日) 20:34:17ヤスデは各節に二対 =( )=
0626デフォルトの名無しさん
2009/04/26(日) 20:43:56さすがに売り上げ減るだろなw
ページめくって実写とかだったら悲鳴まで出るに違いない。
0627デフォルトの名無しさん
2009/04/26(日) 22:39:490628デフォルトの名無しさん
2009/04/27(月) 01:19:020629デフォルトの名無しさん
2009/04/27(月) 01:50:01なんでだよw佃煮でも作るのか?
0630デフォルトの名無しさん
2009/04/28(火) 01:38:040631デフォルトの名無しさん
2009/04/28(火) 01:46:47無理だと思うけど
0632デフォルトの名無しさん
2009/04/28(火) 07:35:090633デフォルトの名無しさん
2009/04/28(火) 13:23:59してるよね。
0634デフォルトの名無しさん
2009/04/28(火) 13:46:380635デフォルトの名無しさん
2009/04/28(火) 14:33:34こんなの仕事で使えるか!
0636デフォルトの名無しさん
2009/04/28(火) 14:35:410637デフォルトの名無しさん
2009/04/28(火) 14:38:200638デフォルトの名無しさん
2009/04/28(火) 15:38:23参照していて、内側の関数へのポインタを他に渡してる場合。
Usenix-88-lexic.pdf でも嫁
0639デフォルトの名無しさん
2009/04/28(火) 15:51:580640デフォルトの名無しさん
2009/04/28(火) 21:29:090641デフォルトの名無しさん
2009/04/28(火) 21:44:200642デフォルトの名無しさん
2009/04/28(火) 23:47:27とりあえずレキシカルクロージャ抜きで関数だけでも定義させてくれれば良いのに…
0643デフォルトの名無しさん
2009/04/28(火) 23:55:370644デフォルトの名無しさん
2009/04/28(火) 23:58:590645デフォルトの名無しさん
2009/04/29(水) 00:01:350646デフォルトの名無しさん
2009/04/29(水) 00:10:040647デフォルトの名無しさん
2009/04/29(水) 00:12:530648デフォルトの名無しさん
2009/04/29(水) 00:51:07sortに渡す比較関数とか即席で作りたいことあるじゃん。
0649デフォルトの名無しさん
2009/04/29(水) 01:00:010650デフォルトの名無しさん
2009/04/29(水) 01:02:31正直どうでもいいな
0651デフォルトの名無しさん
2009/04/29(水) 01:39:100652デフォルトの名無しさん
2009/04/29(水) 04:08:45関数の中身が九割九分クラスになって残りはチョロっとしたループや分岐だけに成ったりするが
これが不思議とメンテしやすいんだょな・・
0653デフォルトの名無しさん
2009/04/29(水) 05:26:320654デフォルトの名無しさん
2009/04/29(水) 08:27:020655デフォルトの名無しさん
2009/04/29(水) 08:55:160656デフォルトの名無しさん
2009/04/29(水) 09:53:000657デフォルトの名無しさん
2009/04/29(水) 11:50:300658デフォルトの名無しさん
2009/04/29(水) 16:53:210659デフォルトの名無しさん
2009/04/29(水) 17:02:570660デフォルトの名無しさん
2009/04/29(水) 18:02:550661デフォルトの名無しさん
2009/04/29(水) 18:12:500662デフォルトの名無しさん
2009/04/29(水) 18:29:180663デフォルトの名無しさん
2009/04/29(水) 18:37:57君はプログラミングやめた方がいい
0664デフォルトの名無しさん
2009/04/29(水) 19:17:26俺が言ったことじゃなくて、人から言われたことです
0665デフォルトの名無しさん
2009/04/29(水) 19:41:00なんの免罪符にもなってない
0666デフォルトの名無しさん
2009/04/29(水) 19:43:550667デフォルトの名無しさん
2009/04/29(水) 19:48:15傷口が広がるだけだぜ
0668デフォルトの名無しさん
2009/04/29(水) 19:55:12何で?
0669デフォルトの名無しさん
2009/04/29(水) 20:11:12ありそうでなかったパターンのいいわけだな。
0670デフォルトの名無しさん
2009/04/29(水) 20:16:14三項演算子禁止とか。
>653-654の流れで書いたんだが
0671デフォルトの名無しさん
2009/04/29(水) 20:19:20それなりのレベルの低さが要求されるので、
残念ながら未体験です。
0672デフォルトの名無しさん
2009/04/29(水) 20:21:15レベル低くてすまんかった
0673デフォルトの名無しさん
2009/04/29(水) 22:46:550674デフォルトの名無しさん
2009/04/29(水) 22:48:280675デフォルトの名無しさん
2009/04/29(水) 22:50:060676デフォルトの名無しさん
2009/04/29(水) 22:51:290677デフォルトの名無しさん
2009/04/29(水) 22:53:130678デフォルトの名無しさん
2009/04/29(水) 23:02:470679デフォルトの名無しさん
2009/04/29(水) 23:05:36省略できるだけだから、何も変らないんじゃね?
後方互換性を気にするなら、愚直に今まで通り宣言するだけだし。
0680デフォルトの名無しさん
2009/04/29(水) 23:06:08つかったことないけどね。Auto。。。
0681デフォルトの名無しさん
2009/04/29(水) 23:13:38そうだよな、互換性考えたら使えるわけないよな
0682デフォルトの名無しさん
2009/04/29(水) 23:33:46C++に新たなパラダイムを与えるものならともかく
auto は打つ文字数が減って腱鞘炎が直りました、
ぐらいしか変わらないという意味。
0683デフォルトの名無しさん
2009/04/30(木) 00:46:400684デフォルトの名無しさん
2009/04/30(木) 00:54:090685デフォルトの名無しさん
2009/04/30(木) 01:19:11でも右辺値参照も誰も使ってないぞ
4.3からだから入ってから大分経つのに
0686デフォルトの名無しさん
2009/04/30(木) 02:58:280687デフォルトの名無しさん
2009/04/30(木) 08:31:39D言語のように静的に文字列弄れる訳でもなし、戻り値推論(以下)できる訳でもなし、C++0x程度じゃまだまだ。
auto Square(T)(T t)
{
return t * t;
}
0688デフォルトの名無しさん
2009/04/30(木) 08:57:44// 関数の文法は統一されるはずだと信じてる
template < typename T >
[] Square( T t ) -> decltype(t * t)
{ return t * t ; }
Boost.labmdaみたいな変態的なライブラリを使った変態的な型を返したい場合は、
重複はちょっと面倒だけど。
あと、動的に返す型が変わるような関数はどういう扱いになるの? コンパイルエラー?
0689デフォルトの名無しさん
2009/04/30(木) 09:48:57?
returnが二つ以上ある関数のこと言っているなら両方の共通の型になる。
0690デフォルトの名無しさん
2009/04/30(木) 09:55:47if(乱数%2) return ほげほげ ;
else return はげはげ ;
みたいな。
共通の型? javaみたいに暗黙のうちに継承する型とかがあるの?
0691デフォルトの名無しさん
2009/04/30(木) 10:10:41動的にって言うけど、それってコンパイル時に静的に解決しなきゃいかん問題だよね。
0693デフォルトの名無しさん
2009/04/30(木) 11:14:12intとlongならlongだし、A派生のBとA派生のCならAだし。
0694デフォルトの名無しさん
2009/04/30(木) 11:27:03auto x = func();
返り値の連鎖は無理臭いけど何が出てくるかわからんワクテカ感は0xでも味わえると思う。
0695デフォルトの名無しさん
2009/04/30(木) 19:41:06今でも条件演算子でそういう状況になるので、
そのときどうなるかは決まっている。
それは戻り値推論でもそのまま採用すべきかものどうかは分からないけど。
0696デフォルトの名無しさん
2009/05/02(土) 00:05:47>>688ならこう書けるはず
template < typename T >
[] Square( T t ){ return t * t ; }
0697デフォルトの名無しさん
2009/05/02(土) 03:39:09Move constructor は例外を投げてはいけない・・・という話から、解決策として
noexcept という関数への修飾キーワードで例外を投げないことを
明示し静的にチェックできるようにしたうえで Move constructor はデフォルトで
noexcept にしよう・・・という話から、ついでにデストラクタもデフォルトで noexcept にしようという話。
今更こんな壮大な変更が取り込まれる可能性があるのか、甚だ疑問ではあるが、
確かにすごく欲しいとは思う。
0698デフォルトの名無しさん
2009/05/02(土) 06:16:54ワザと誤解して間違いそうな文法考えて、「分かるヤツだけが分かる!」
って、選民意識を得るために作ってるとしか思えん。
もうちょっと分かりやすいのを考えてほしい・・・
0699デフォルトの名無しさん
2009/05/02(土) 06:35:56そこでキーワードをnothrowにしないのは意地?
0700デフォルトの名無しさん
2009/05/02(土) 08:08:240701デフォルトの名無しさん
2009/05/02(土) 08:40:31「投げません」って言われても「何を?」って思うけど
「例外無し」って言われると「ああ、例外無いんだ」って思う
0702デフォルトの名無しさん
2009/05/02(土) 09:10:400703デフォルトの名無しさん
2009/05/02(土) 09:43:56何のための名前空間。
0704デフォルトの名無しさん
2009/05/02(土) 09:50:520705デフォルトの名無しさん
2009/05/02(土) 09:54:430706デフォルトの名無しさん
2009/05/02(土) 10:01:34名前空間で対策できるってことは予約語じゃなくて単なる識別子として導入?
そんなきもいのマジ勘弁
0707デフォルトの名無しさん
2009/05/02(土) 10:06:000708デフォルトの名無しさん
2009/05/02(土) 10:55:230709デフォルトの名無しさん
2009/05/02(土) 12:03:47まさにその通り。
operator new 関数に nothrow_t 型を引数として受け取るオーバーロードがある。
で、
struct nothrow_t {};
extern const nothrow_t nothrow;
0710デフォルトの名無しさん
2009/05/02(土) 12:07:23いや、それがあるからキーワードとして nothrow を追加するのは無理ってことだろ。
0711デフォルトの名無しさん
2009/05/02(土) 13:23:41型システムに入れるとかアホか
0712デフォルトの名無しさん
2009/05/02(土) 14:58:33C99と同じ道をたどるんじゃ。
0713デフォルトの名無しさん
2009/05/02(土) 15:04:38コンセプトとかもう絶対無理
0714デフォルトの名無しさん
2009/05/02(土) 15:13:240715デフォルトの名無しさん
2009/05/02(土) 15:15:15誰も実装しない、出来ない
0716デフォルトの名無しさん
2009/05/02(土) 15:16:31テンプレートが関わるエラーメッセージの改善という程度のことに役立つと信じて。
0717デフォルトの名無しさん
2009/05/02(土) 15:17:41conceptを使うことには利点があるのだから。
exportは、コンパイル時間を多少短くできるってことぐらいしか利点がないから。
conceptなしでは、C++0xは語れないぜ。
C++0xの多くの機能が、conceptを前提にしているんだから。exportとはわけがちがう。
0718デフォルトの名無しさん
2009/05/02(土) 17:02:49conceptGCCとかいつまでやってんだよ
主な商用コンパイラも軒並みガン無視だし
0719デフォルトの名無しさん
2009/05/02(土) 17:04:22だいたい、中途半端な実装をリリースして、互換性の問題を引き起こしてもらっても困る。
0720デフォルトの名無しさん
2009/05/02(土) 17:10:020721デフォルトの名無しさん
2009/05/02(土) 17:11:489ヶ月くらい更新止まってるし、その前は1年3ヶ月更新止まってたし
http://www.generic-programming.org/software/ConceptGCC/download.php
0722デフォルトの名無しさん
2009/05/02(土) 18:19:16vcの人は1年くらいかかるとか言ってたな
vc11には入るんだろうか…?
0723デフォルトの名無しさん
2009/05/02(土) 19:22:41>At present, the concepts branch provides almost no support for concepts.
ttp://gcc.gnu.org/projects/cxx0x.html
とか書いてあるな、おい。
更新も 10 ヶ月止まってるっぽい。
ttp://gcc.gnu.org/viewcvs/branches/cxx0x-concepts-branch/
0724デフォルトの名無しさん
2009/05/02(土) 20:24:59コンセプトオワタ
0725デフォルトの名無しさん
2009/05/02(土) 20:57:430726デフォルトの名無しさん
2009/05/02(土) 21:08:030727デフォルトの名無しさん
2009/05/02(土) 21:28:52GCCが実装できないってのは、C++の言語仕様の複雑さを物語っているようだ。
0728デフォルトの名無しさん
2009/05/03(日) 17:42:074.5で何が実装されるかってだけでもwktk出来るさ。
0729デフォルトの名無しさん
2009/05/03(日) 17:54:55さっさとしてくれ
0730デフォルトの名無しさん
2009/05/04(月) 00:35:120731デフォルトの名無しさん
2009/05/04(月) 01:36:560732デフォルトの名無しさん
2009/05/04(月) 01:58:18変えたい派 → 騒ぐ
止める人がいない
0733デフォルトの名無しさん
2009/05/04(月) 08:44:520734デフォルトの名無しさん
2009/05/04(月) 13:08:000735デフォルトの名無しさん
2009/05/04(月) 23:47:010736デフォルトの名無しさん
2009/05/04(月) 23:49:210737デフォルトの名無しさん
2009/05/04(月) 23:58:25特に cstdint と regex
0738デフォルトの名無しさん
2009/05/05(火) 00:02:29とりあえず
> どんどん〜なっていく
っていうのは無いはず。
0739デフォルトの名無しさん
2009/05/05(火) 00:24:220740デフォルトの名無しさん
2009/05/05(火) 00:35:110741デフォルトの名無しさん
2009/05/05(火) 00:36:57の動作は未定義だそうだ
0742デフォルトの名無しさん
2009/05/05(火) 00:37:510743デフォルトの名無しさん
2009/05/05(火) 00:43:30http://codepad.org/JCtHYXzj
iは変化しないって思ってたけどそうじゃないんか。
実戦ではつかえないっすねー。
0744デフォルトの名無しさん
2009/05/05(火) 00:49:590745デフォルトの名無しさん
2009/05/05(火) 00:51:04まぁ誰かが調べるまで気長に待てばいいじゃない
0746デフォルトの名無しさん
2009/05/05(火) 00:54:58C# では
int i = 5;
i = i++;
System.Console.Write(i);
で 5 が出力されるので疑問に思ってちょっと調べてみたんですけど
規格みると副作用とか副作用完了点とかよくわからない
0747デフォルトの名無しさん
2009/05/05(火) 00:56:340748デフォルトの名無しさん
2009/05/05(火) 01:02:01「未定義or不定だからヤメロ」って言えれば楽なんすけどねー。
>>746
wktk
0749デフォルトの名無しさん
2009/05/05(火) 01:02:10http://www.st.rim.or.jp/~phinloda/cqa/cqa7.html
0750デフォルトの名無しさん
2009/05/05(火) 01:04:54http://www.st.rim.or.jp/~phinloda/cqa/cqa7.html#Q8
未定義だそうだ。
0751デフォルトの名無しさん
2009/05/05(火) 01:06:290752デフォルトの名無しさん
2009/05/05(火) 01:12:150753デフォルトの名無しさん
2009/05/05(火) 01:19:27何この程度の低い流れ。自演?
0754デフォルトの名無しさん
2009/05/05(火) 01:44:52Regexは2008 SP1の時点で登載済み。TR1としてだけど。
0755デフォルトの名無しさん
2009/05/05(火) 02:10:500756デフォルトの名無しさん
2009/05/05(火) 06:35:570757デフォルトの名無しさん
2009/05/05(火) 06:37:42Sequence pointsすら分からない奴が、
まだ確定してない規格知ろうなんて十年早いよな。
0758デフォルトの名無しさん
2009/05/05(火) 11:16:010759デフォルトの名無しさん
2009/05/05(火) 12:34:08あのころはCマガ面白かった
0760デフォルトの名無しさん
2009/05/05(火) 20:38:35経験不足のおバカさんだな。
0761デフォルトの名無しさん
2009/05/07(木) 12:23:26まぁ、サポートされてても日本語でソース書こうなんて思わないけどさぁ。
0762デフォルトの名無しさん
2009/05/07(木) 15:42:590763デフォルトの名無しさん
2009/05/07(木) 15:49:00まあ、今までも、C++のコンパイラは、ほぼ例外なく実装依存の文字が、少なくとも文字列リテラルやコメント内で使えたし、
いまさら規定しても何も変わらないと思うが。
0764デフォルトの名無しさん
2009/05/07(木) 18:58:57UNICODEの話をしている。
0765デフォルトの名無しさん
2009/05/07(木) 19:40:52通るんだが、現場とかで見るよう担ったらヤダなぁ、
変換するのがダリぃ。
int 二乗(int 引数)
{
return 引数*引数;
}
0766デフォルトの名無しさん
2009/05/07(木) 19:54:44コンパイラーの仕様?
0767デフォルトの名無しさん
2009/05/07(木) 20:18:28「ソースコード」の文字列に関しては、何にも規定されてないと思うんだけど。
>>765
知らなかった。プリプロセッサにも使えるんだな。
ということは、ラムダ関数が実装された暁に、λをautoか[]に#defineすれば・・・。
まあ、正直使いたくないな。
>>766
C++0xでは、識別子に、「その他の実装依存の文字」が使えることになってる。
だから漢字が使えても規格上問題ない(ソースコードの移植性はない)
0768デフォルトの名無しさん
2009/05/07(木) 20:30:09二点質問があります。
「その他」ではない文字は何ですか?
C++0xに対応したコンパイラーが必ず使えなければいけない(移植性のある)文字セットは何ですか?
0769デフォルトの名無しさん
2009/05/07(木) 20:58:57識別子の先頭の文字には、
a b c d e f g h i j k l m
n o p q r s t u v w x y z
A B C D E F G H I J K L M
N O P Q R S T U V W X Y Z _
先頭以外ならば、上記に加えて、
0 1 2 3 4 5 6 7 8 9
また、"universal-character-name"というものが使える。
これは、/uもしくは/Uに続く、十六進数で指定する、
/uは4文字、/Uは8文字指定できる。
つまり、/uXXXX もしくは /UXXXXXXXX という形式になる。
その表現する所の文字は、十六進数の値の、ISO/IEC 10646で規定されている値に対応する文字、
つまりはUnicode。
だから、以下のコードは妥当、ということになるはず。この辺は実は詳しくないのだけれど。
//C++0xでは完璧に合法なコード
int /u3042/u3044/u3046 = 0 ;
もし、コンパイラがその他の実装依存の文字を許可するならば、上のコードは、以下と同じ
int あいう = 0 ;
0770デフォルトの名無しさん
2009/05/07(木) 21:12:150771デフォルトの名無しさん
2009/05/07(木) 21:14:50int \u3042\u3044\u3046 = 0 ;
0772デフォルトの名無しさん
2009/05/07(木) 21:16:53加速繰り返し 括弧 自然数参照 エヌ、エー 国家
ここから
標準の黒板に 書き出せ エヌ 書き出せ 標準の行末。
ここまで
0773デフォルトの名無しさん
2009/05/07(木) 22:20:09ソースコードの文字はユニコードにコードポイントがなければならないように
なっています。
コンパイルの一番最初の段階で基本ソース文字集合(A-Za-z_0-9と基本的な
記号と空白類)か\uxxxx,\Uxxxxxxxxと言うようなユニコードの
コードポイントに変換されそのあとに識別子としての解釈があります。
なので\uxxxx,\Uxxxxxxxxだろうとそのままの文字だろうと識別子に使えます。
ただし識別子に使用できる文字はA-Za-z0-9_と規格の付属書(appendix)Eにある
指定されたユニコード文字だけです。
いまこれを書くために読んだ限りですが。。。
0774デフォルトの名無しさん
2009/05/07(木) 23:00:49#define駆使すればもっと自然な日本語にもできるぞ。
http://pc12.2ch.net/test/read.cgi/tech/1037458703/942
0775デフォルトの名無しさん
2009/05/08(金) 13:43:400776773
2009/05/08(金) 18:59:34> JIS X 3014:2003を読むと処理系依存にその他の文字とか全然ないですね。
は
「JIS X 3014:2003を読むとその他の文字が処理系依存とか全然ないですね。」
0777デフォルトの名無しさん
2009/05/08(金) 19:11:29トライグラフの変換は?
0778デフォルトの名無しさん
2009/05/08(金) 19:45:000779デフォルトの名無しさん
2009/05/08(金) 20:50:270780デフォルトの名無しさん
2009/05/08(金) 21:00:360781デフォルトの名無しさん
2009/05/08(金) 21:11:47「for The-C++-After-0x」とかいう気が早すぎる奴くらい
0782デフォルトの名無しさん
2009/05/08(金) 21:13:520784デフォルトの名無しさん
2009/05/08(金) 22:32:40なにげにあったら便利だね
0785デフォルトの名無しさん
2009/05/09(土) 05:50:40News 2009-05-08: The C++ Standard Core Language Issues List (Revision 63) is available
News 2009-05-08: The C++ Standard Library Issues List (Revision 64) is available
0786デフォルトの名無しさん
2009/05/10(日) 19:46:370787デフォルトの名無しさん
2009/05/10(日) 20:00:07ttp://gcc.gnu.org/projects/cxx0x.html
0788デフォルトの名無しさん
2009/05/10(日) 20:03:45Thx
0789デフォルトの名無しさん
2009/05/13(水) 18:52:200790デフォルトの名無しさん
2009/05/16(土) 16:21:230791デフォルトの名無しさん
2009/05/16(土) 21:40:17そう言う雰囲気を、ちっとも感じないのだが、
いきなり「出来ました」って出るの?
0792デフォルトの名無しさん
2009/05/16(土) 21:41:00この世界の納期は破るためにある
0793デフォルトの名無しさん
2009/05/16(土) 22:15:03投票の繰り返しになるから、まあ地味っちゃ地味。
サイトにDISって文字が現れだしたらゴールは近い。
0794デフォルトの名無しさん
2009/05/17(日) 03:12:190795デフォルトの名無しさん
2009/05/17(日) 03:37:38c++ 0xが2010年に出てもいいじゃないか
0796デフォルトの名無しさん
2009/05/17(日) 03:54:570797デフォルトの名無しさん
2009/05/17(日) 04:14:250798デフォルトの名無しさん
2009/05/17(日) 04:59:410799デフォルトの名無しさん
2009/05/17(日) 09:29:12それだとやっぱり09年までだろ。
オプソ厨のアホさ此処に極まれりだな。
0800デフォルトの名無しさん
2009/05/17(日) 09:34:36with whom you are fighting?
0801デフォルトの名無しさん
2009/05/17(日) 15:03:370802デフォルトの名無しさん
2009/05/17(日) 18:26:05ttp://www.devx.com/cplus/Article/41694?trk=DXRSS_LATEST
0803デフォルトの名無しさん
2009/05/18(月) 07:27:37かっこはひとつでいいじゃん
0804デフォルトの名無しさん
2009/05/18(月) 07:36:470805デフォルトの名無しさん
2009/05/18(月) 09:12:220806デフォルトの名無しさん
2009/05/18(月) 09:22:55こいつ等にシンタックスシュガーをかませようとか
ってな, 話はでてこない???
0807デフォルトの名無しさん
2009/05/18(月) 09:36:570808デフォルトの名無しさん
2009/05/18(月) 09:39:43mplやpreprocessorで「汚いlisp」汚染が酷い
0809デフォルトの名無しさん
2009/05/18(月) 10:54:31LISPこそ、全てのプログラミング言語の最終形態なのだと
全てのプログラミング言語はその進化の果てにLISPと同一化するのだと
0810デフォルトの名無しさん
2009/05/18(月) 12:36:06すべてを飲み込んでしまうってやつ。
0811デフォルトの名無しさん
2009/05/18(月) 14:08:04C++0x萌え、CLOS萌え
0812デフォルトの名無しさん
2009/05/18(月) 20:49:240813デフォルトの名無しさん
2009/05/18(月) 20:58:22「美少女中学生はC++0xが嫌いです」
でおけ?
0814デフォルトの名無しさん
2009/05/18(月) 21:33:13むしろ寄生虫じぇねーの?
いろんな言語に入り込んでるが、それ自体で使われることが少ないとかさ。
0815デフォルトの名無しさん
2009/05/18(月) 21:36:27ほえ?
他の言語が Lisp のアイデアパクリまくってても、それに対して何も言わないが
> それ自体で使われることが少ないとかさ
ここ数年ずっと Lisp で納品物作ってるwW
0816デフォルトの名無しさん
2009/05/18(月) 22:24:34LISPよりしごと多そう
0817デフォルトの名無しさん
2009/05/18(月) 22:33:15是非御社で働かせていただきたいでつ ><
0818デフォルトの名無しさん
2009/05/19(火) 04:11:41ほえ、じゃねーよ。なめんなよ。
0819デフォルトの名無しさん
2009/05/20(水) 23:21:350820デフォルトの名無しさん
2009/05/21(木) 05:18:190821デフォルトの名無しさん
2009/05/21(木) 18:47:30http://d.hatena.ne.jp/ntnek/20090210/p1
0822デフォルトの名無しさん
2009/05/21(木) 20:07:42まあ有用だとは思うが
0823デフォルトの名無しさん
2009/05/27(水) 21:05:44Effective の新版でも書き始めたんかな?
0824デフォルトの名無しさん
2009/05/28(木) 01:13:130825デフォルトの名無しさん
2009/05/28(木) 06:42:15どっちかというとC++0xに向けての改正版作成のためっぽい
0826デフォルトの名無しさん
2009/05/28(木) 07:01:05COBOLというよりPL/Iの時の悲劇を思い出させる
巨大化しすぎてまともに使いこなせるユーザーがほとんどいなかった
0827デフォルトの名無しさん
2009/05/28(木) 07:04:25時代はまた繰り返そうとしている
複雑化する一方のC++とWindows
0828デフォルトの名無しさん
2009/05/28(木) 07:49:46だいたい名前からしてでかすぎるだろ。
0829デフォルトの名無しさん
2009/05/28(木) 07:59:220830デフォルトの名無しさん
2009/05/28(木) 08:55:260831デフォルトの名無しさん
2009/05/28(木) 14:49:31あったら使いたい
0832デフォルトの名無しさん
2009/05/28(木) 15:06:520833デフォルトの名無しさん
2009/05/28(木) 15:12:080834デフォルトの名無しさん
2009/05/28(木) 16:50:18今からC++を始める人にとっては相当大変だろうな。
そして、禿はいつ第4版を書くのだろうか。
0835デフォルトの名無しさん
2009/05/28(木) 18:26:210836デフォルトの名無しさん
2009/05/28(木) 19:06:530837デフォルトの名無しさん
2009/05/28(木) 19:13:580838デフォルトの名無しさん
2009/05/28(木) 21:44:030839デフォルトの名無しさん
2009/05/28(木) 23:29:36std::binary_functionを継承しなければならない理由がわからなかった
0840デフォルトの名無しさん
2009/05/28(木) 23:30:470841デフォルトの名無しさん
2009/05/28(木) 23:38:120842デフォルトの名無しさん
2009/05/28(木) 23:42:450843デフォルトの名無しさん
2009/05/29(金) 00:42:250844デフォルトの名無しさん
2009/05/29(金) 01:13:150845デフォルトの名無しさん
2009/05/29(金) 01:29:070846デフォルトの名無しさん
2009/05/29(金) 01:37:25unary_function*があらゆる場所で絶対にdeleteされないとどうして言い切れるのか
0847デフォルトの名無しさん
2009/05/29(金) 01:53:230848デフォルトの名無しさん
2009/05/29(金) 01:57:21引数や戻り値を得るためのものなんだよ。
そもそもの想定されている使用方法が、ベースクラスで渡すものじゃないんだ。
お前の言い方は、
unique_ptrは、auto_ptrと違い、そのスコープ内のみがオブジェクトの生存期間だと明示できる、というけれど、
「何もしないdeleter」をunique_ptrに渡したら、auto_ptrみたいに使用できるじゃないか、
プログラマが絶対に、「何もしないdeleter」を書かないと、どうして言い切れるのか!
と言っているのと何ら変わりないんだよ。
0849デフォルトの名無しさん
2009/05/29(金) 03:07:11実は単なるtypedefなんだけどな
これが無くても平気な関数アダプタはあるが、bind2nd()などは
無いとエラーを吐く
0850デフォルトの名無しさん
2009/05/29(金) 03:11:230851デフォルトの名無しさん
2009/05/29(金) 09:03:13unary_function/binary_functionは必要なtypedefを書くのをちょっと楽するためだけのもの
しかもbind1st/bind2nd使わないなら不要
さらにC++0xのbindには内部resultテンプレートがあれば引数型は固定でなくてよい
result_of<>はresult_typeもしくは内部resultテンプレートがあれば十分
ところでCallableコンセプトあればresult_ofいらなくね?
0852デフォルトの名無しさん
2009/05/29(金) 09:17:04コンセプト使うの前提にすれば、Type Traits系のライブラリなんて全部いらなくね?
0853デフォルトの名無しさん
2009/05/29(金) 11:06:310854デフォルトの名無しさん
2009/05/29(金) 11:17:30既存のtraits系などと共存出来て、段階的に移行できること、
というのがあった。
>>839のようなケースはconcept_mapに集約されていくのだろうか…
0855デフォルトの名無しさん
2009/05/29(金) 13:18:48iteratorを整理したくらいでライブラリのconcept化は止まってるね。
0856デフォルトの名無しさん
2009/05/29(金) 22:48:310857デフォルトの名無しさん
2009/05/30(土) 02:14:06C++0xには入らないのだから、
ライブラリのコンセプト化は後回しだろうね。
0858デフォルトの名無しさん
2009/06/03(水) 11:15:560859デフォルトの名無しさん
2009/06/03(水) 14:02:42( ・ω・)
○={=}〇,
|:::::::::\, ', ´
、、、、し 、、、(((.@)wwwwwwwww
0860デフォルトの名無しさん
2009/06/03(水) 21:37:500861デフォルトの名無しさん
2009/06/05(金) 23:37:58not1、not2使うことって多くないのかな?
0862デフォルトの名無しさん
2009/06/06(土) 12:32:49多くはないだろ。jk
0863デフォルトの名無しさん
2009/06/06(土) 16:48:27やはりGCC-4.4が多いのかな?
0864デフォルトの名無しさん
2009/06/06(土) 21:11:04gcc version 4.5.0 20090605 (experimental) (GCC)
0865デフォルトの名無しさん
2009/06/06(土) 22:09:010866デフォルトの名無しさん
2009/06/07(日) 00:21:16頭がついていかなくなって、
もう10年近くほとんど使ってないや…。
テンプレートの暗黙的実体化のときに、
constのあるなしで別の型というので、わけわかめ。
自分でテンプレートをばりばり作って
プログラミングしてる人ってどのぐらいいるんだろうか。
型推論自体は便利なんだけど、テンプレートと組み合わさると、
中で何が起こっているのか、わけがわからん。
0867デフォルトの名無しさん
2009/06/07(日) 00:23:16> constのあるなしで別の型というので、わけわかめ。
特殊化で最適化したいことがあるから別扱いにします。
面倒だなと思うことの方が多いけど、慣れたらルーチンワークだし。
0868デフォルトの名無しさん
2009/06/07(日) 00:35:05自分で作ったのしか使えなくね?
boost::ublasとか、デバッグ出来るかよあんなの
0869デフォルトの名無しさん
2009/06/07(日) 00:50:120870デフォルトの名無しさん
2009/06/07(日) 15:36:05http://124.45.27.25:12086/stream.mp3.m3u
IRCNET #CRYBUTSU
0871デフォルトの名無しさん
2009/06/07(日) 17:34:180872デフォルトの名無しさん
2009/06/08(月) 14:12:380873デフォルトの名無しさん
2009/06/08(月) 15:12:120874デフォルトの名無しさん
2009/06/08(月) 21:08:430875デフォルトの名無しさん
2009/06/09(火) 01:34:420876デフォルトの名無しさん
2009/06/09(火) 09:46:14ひたすら自己完結で計算するだけの言語ならかまわんけど
処理に紐付けしてのOSと遣り取りが本分のC++には邪魔になるだけだと思うがね
0877デフォルトの名無しさん
2009/06/09(火) 21:40:100878デフォルトの名無しさん
2009/06/10(水) 00:18:510879デフォルトの名無しさん
2009/06/10(水) 00:19:50そういうのがいい人はそっち使えばいいだけのこと
0880デフォルトの名無しさん
2009/06/10(水) 00:20:22それはそれで、Dっていういまいち普及の兆しすら見えないものがあるわけで。
0881デフォルトの名無しさん
2009/06/10(水) 02:03:47あれはどちらかというと出来の悪いC#
0882デフォルトの名無しさん
2009/06/10(水) 11:56:140883デフォルトの名無しさん
2009/06/10(水) 13:56:26他にも関数ハイジャック軽減法とか
http://www.kmonos.net/alang/d/2.0/hijack.html
例外安全なプログラミングとか(Boost.ScopeExitの元ネタ)
http://www.kmonos.net/alang/d/2.0/exception-safe.html
契約プログラミングとか
http://www.kmonos.net/alang/d/2.0/dbc.html
有用な提案がいっぱいあるが、C++との互換性の無さとライブラリの貧弱さと破壊的変更が多すぎることで台無し。
でもそれがいい。
0884デフォルトの名無しさん
2009/06/10(水) 15:44:22なんていうかありがとう
0885デフォルトの名無しさん
2009/06/10(水) 21:24:460xと同じくらいには
0886デフォルトの名無しさん
2009/06/10(水) 21:30:250887デフォルトの名無しさん
2009/06/10(水) 21:38:24最大の肝であるコンセプトを誰も実装できそうにない時点でもう無理
せいぜいSTLの実装で見えない所に右辺値参照が使われる程度に終わると思う
0888デフォルトの名無しさん
2009/06/10(水) 21:48:300889デフォルトの名無しさん
2009/06/10(水) 21:56:33もう糞長い型名を書くのはイヤだ・・・
0890デフォルトの名無しさん
2009/06/10(水) 22:04:05C#のverへの拒否反応を見るに
0891デフォルトの名無しさん
2009/06/10(水) 22:07:350892デフォルトの名無しさん
2009/06/10(水) 22:27:320893デフォルトの名無しさん
2009/06/10(水) 22:30:21新予約語を変数名や関数名に使ってたり
SFINAEの挙動が変わった影響だったり
それくらい?
0894デフォルトの名無しさん
2009/06/11(木) 07:09:05右辺値参照は結構表立って使われると思うけどな
コピー不可のオブジェクトをコンテナに入れられるようにできるし
0895デフォルトの名無しさん
2009/06/11(木) 20:54:09ワケワカめな構文だらけになっちゃって…。
それこそラムダ式なんて、lambdaとか予約語増やせばいいじゃん。
そもそも、デストラクタが「~クラス名」ってのから、
その傾向があったわけだが、もう一から文法考え直したほうがいいよ。
ツギハギだらけでばっちい。
0896デフォルトの名無しさん
2009/06/11(木) 20:59:44互換性を気にしないならD言語というアプローチがあるし
って、こういう話は1スレ内で10回くらい出てくるね
0897デフォルトの名無しさん
2009/06/11(木) 21:02:09後からそれ予約語になりましたとか言われても
困る人がいると
0898デフォルトの名無しさん
2009/06/11(木) 21:27:28たとえば、「#」で始まる単語は全部キーワード。
#lambda
#funcdef
#null
プリプロセッサは廃止ってことで。
0899デフォルトの名無しさん
2009/06/11(木) 21:29:540900デフォルトの名無しさん
2009/06/11(木) 21:30:110901898
2009/06/11(木) 21:30:310902デフォルトの名無しさん
2009/06/11(木) 21:34:240903デフォルトの名無しさん
2009/06/11(木) 21:35:40というか、トライグラフやダイグラフみたいな有害なだけのクソ仕様を
ただ政治的な理由だけで入れざるを得なかったくらい苦労してる言語だぞ
記号関係はCの頃から予約語以上の鬼門
0904デフォルトの名無しさん
2009/06/11(木) 21:43:14素直に過去の資産、一度チャラって言えばいいのに
0905デフォルトの名無しさん
2009/06/11(木) 21:47:11正直アレらは丸ごと削除しても、現実的にあまり影響でないと思う。
0906デフォルトの名無しさん
2009/06/11(木) 21:54:37auto main(auto argc: int, auto argv: char **) : int
0907デフォルトの名無しさん
2009/06/11(木) 22:09:56さっさとdeprecatedにして欲しい
どうせ不思議な力が働くから無理なんだろうけど
uR"[こんにちはrawリテラルです( ??'ω??')
でもトライグラフ様の変換が優先なので上の顔文字は( ^ω^)になります( ??'ω??')
ばかなの??(??= ??'ω??')死ぬの??
]"
0908デフォルトの名無しさん
2009/06/11(木) 23:00:40しめきり間際に、駆け込みで仕様が追加されること。
確かに、その機能自体は有用なんだが、文法のことももっと考えろと。
0909デフォルトの名無しさん
2009/06/12(金) 00:12:57templeteを正定数で特殊化できたり、
その後の大爆発を引き起こしてしまう
ポテンホームランがなくなってしまうと思うの。
conceptやめてtraitsで頑張ろうとか。
0910デフォルトの名無しさん
2009/06/12(金) 01:49:54[[final]]きもすぎるだろ。
0911デフォルトの名無しさん
2009/06/12(金) 01:57:110912デフォルトの名無しさん
2009/06/12(金) 02:05:40提供されたコンテンツをただ見るだけ。
C++はExcelだ。色々データを工夫してがんばる。そこにまた楽しみがある。
本来プログラムはC++程度までのものが一番楽しいとおもうんだが・・
これ以上C++を近代化しないでくれ。俺はC++が一番好きだ。
0913デフォルトの名無しさん
2009/06/12(金) 02:07:400914デフォルトの名無しさん
2009/06/12(金) 02:50:470915デフォルトの名無しさん
2009/06/12(金) 09:12:260916デフォルトの名無しさん
2009/06/12(金) 09:12:43Objective-Cみたいに、CからC++のメンバ関数を呼び出したり、
クラスの中身をいじくりまわせたりするようになるとうれしい。
0917デフォルトの名無しさん
2009/06/12(金) 12:20:48例えば
C++ではこういう新しい機能が必要だと思う
http://pc12.2ch.net/test/read.cgi/tech/1173238573/l50
こういったような、ヨソのスレでやってくれないか。
あと、
C++は難しすぎ 難易度:4
http://pc12.2ch.net/test/read.cgi/tech/1221557484/l50
とか
C++ に未来はあるか??? そんなものはない!!!
http://pc12.2ch.net/test/read.cgi/tech/1178945996/l50
とか向けの話題もそれぞれのスレでよろしく頼む。
C++ に対する願望を書き込むのに、もう少しふさわしいスレがあったように思うが
落ちてるようだ。
0x への不満や愚痴はココでいいと思うのだけれども。
0918デフォルトの名無しさん
2009/06/12(金) 12:28:260919デフォルトの名無しさん
2009/06/12(金) 12:32:19俺はむしろC互換じゃなくていい
DやAda95みたいな呼び出しインターフェースはないと困るけどね
で、俺の意見は「じゃあD使え」と言われるわけだ
0920デフォルトの名無しさん
2009/06/12(金) 14:07:53なんでないと困るんだ?
困る理由は?
0921デフォルトの名無しさん
2009/06/12(金) 14:39:08POSIXやWin32APIにアクセスできなくなるからでしょ
つかこれ系の話題はもういいよ
0922デフォルトの名無しさん
2009/06/12(金) 17:00:340923デフォルトの名無しさん
2009/06/12(金) 18:11:300924デフォルトの名無しさん
2009/06/12(金) 18:15:30がんばれ!
0925デフォルトの名無しさん
2009/06/12(金) 19:05:46謎の技術で、C#とかのメソッド内に、
インラインで最適化されたネイティブコードを埋め込んでくれるやつ。
これがあれば、C++やめる。
0926デフォルトの名無しさん
2009/06/12(金) 20:45:05旧C++を呼び出せる、新C++を作ればいいんだよ。
今だって、同じコンパイラにCモードとC++モードがあるんだから、
過去のコードまで同じモードでコンパイルできる必要ないよ。
0927デフォルトの名無しさん
2009/06/12(金) 20:54:46そういう用途には普通はBLASなどのライブラリを使うしそれで十分だろ。
0928デフォルトの名無しさん
2009/06/12(金) 21:28:02数値計算するなら OCaml とか使ってたほうがいいだろ
0929デフォルトの名無しさん
2009/06/12(金) 21:42:38それは極端すぎ
0930デフォルトの名無しさん
2009/06/12(金) 21:44:410931デフォルトの名無しさん
2009/06/12(金) 22:27:14コンセプト?いらんいらん
0932デフォルトの名無しさん
2009/06/12(金) 22:50:300933デフォルトの名無しさん
2009/06/12(金) 23:51:41TMPなんか出来ない方がいい
0934デフォルトの名無しさん
2009/06/13(土) 00:12:410935デフォルトの名無しさん
2009/06/13(土) 00:30:42hogehoge<foo>って書くと、プリプロセッサのhogehoge関数がfoo引数で呼び出されてC++のコードを生成するみたいな。
0936デフォルトの名無しさん
2009/06/13(土) 00:35:020937デフォルトの名無しさん
2009/06/13(土) 01:11:41ライブラリとかもっと増やして欲しいけど。
0938デフォルトの名無しさん
2009/06/13(土) 01:18:21つ Perl
0939デフォルトの名無しさん
2009/06/13(土) 01:25:33xmlの標準なライブラリが欲しいなぁ。
バリバリにイテレータとか使いまくってるようなの。
0940デフォルトの名無しさん
2009/06/13(土) 02:42:56それはDがCTFEという形で実現してる
0941デフォルトの名無しさん
2009/06/13(土) 03:21:59静的に文字列を弄ってコードを作りmixinできる。
デバッグが大変だけど。
0942デフォルトの名無しさん
2009/06/13(土) 03:59:140943デフォルトの名無しさん
2009/06/13(土) 10:52:44メンバの有無やimportの依存グラフを作るだけでコンパイラと同等の機能が必要になる。
Dはこの点C++より状況が悪くなっている。
0944デフォルトの名無しさん
2009/06/13(土) 17:16:180945デフォルトの名無しさん
2009/06/13(土) 17:23:17C++だとそうはいかないかと
0946デフォルトの名無しさん
2009/06/13(土) 20:18:100947デフォルトの名無しさん
2009/06/13(土) 20:29:170948デフォルトの名無しさん
2009/06/13(土) 23:18:35Direct Xとかも自在に使えて便利だったのに、どうしてやめたのかしら?
0949デフォルトの名無しさん
2009/06/14(日) 00:03:420950デフォルトの名無しさん
2009/06/14(日) 02:33:150951デフォルトの名無しさん
2009/06/14(日) 02:43:150952デフォルトの名無しさん
2009/06/14(日) 03:44:550953デフォルトの名無しさん
2009/06/14(日) 05:04:180954デフォルトの名無しさん
2009/06/14(日) 05:28:10できるだけ多くの人に使われなきゃ意味内と思うんだが。
0955デフォルトの名無しさん
2009/06/14(日) 09:25:090956デフォルトの名無しさん
2009/06/14(日) 11:54:06その程度ならまだひとのほうがよゆうある。
0957デフォルトの名無しさん
2009/06/14(日) 20:55:39いまgccやvcで使える範囲は全然余裕で使えるよ
むしろ、今まで「何故こう書けないようにしたし」って感じてたところが面白いくらいに解消される
lambdaの変態文法も、使いはじめてみれば普通に使えるっつーか短ければ短いほど使いやすいように感じてくる
使ってる記号([])は意味不明だけどね…
0958デフォルトの名無しさん
2009/06/14(日) 23:03:29悲しむべき事に、これは将来に渡って変わらない、決定事項なのだよ。
0959デフォルトの名無しさん
2009/06/14(日) 23:07:15悲しまずにC#を使えばいい。
0960デフォルトの名無しさん
2009/06/14(日) 23:21:450961デフォルトの名無しさん
2009/06/14(日) 23:24:090962デフォルトの名無しさん
2009/06/15(月) 00:04:450963デフォルトの名無しさん
2009/06/15(月) 00:09:300964デフォルトの名無しさん
2009/06/15(月) 00:18:120965デフォルトの名無しさん
2009/06/15(月) 00:29:240966デフォルトの名無しさん
2009/06/15(月) 00:51:05いや何でもない
0967デフォルトの名無しさん
2009/06/15(月) 01:28:03GCなしでオブジェクト指向を書ける言語は今もC++くらいしかない
0968デフォルトの名無しさん
2009/06/15(月) 02:09:27勘違いも甚だしい意見だな。
その結果出来上がったソースは、標準的な頭脳のキャパを超えてるだろ?
そして、スパゲッティ。
お前みたいなやつがいるから困る。
0969デフォルトの名無しさん
2009/06/15(月) 02:30:15釣りかな……
0970デフォルトの名無しさん
2009/06/15(月) 02:38:490971デフォルトの名無しさん
2009/06/15(月) 02:49:000972デフォルトの名無しさん
2009/06/15(月) 02:56:510973デフォルトの名無しさん
2009/06/15(月) 04:48:390974デフォルトの名無しさん
2009/06/15(月) 05:21:58D言語もGC無しで書けるよ。記述が長くなって面倒だけど。
0975デフォルトの名無しさん
2009/06/15(月) 12:50:390976デフォルトの名無しさん
2009/06/15(月) 13:20:410977デフォルトの名無しさん
2009/06/15(月) 13:45:350978デフォルトの名無しさん
2009/06/15(月) 14:01:44言語の境界に触れずに使うのが賢いと思う。
0979デフォルトの名無しさん
2009/06/15(月) 18:23:400980デフォルトの名無しさん
2009/06/15(月) 18:24:500981デフォルトの名無しさん
2009/06/15(月) 21:57:15先進的ですね。
0982デフォルトの名無しさん
2009/06/15(月) 22:42:58iostreamはまともに勉強したこと無いわ
0983デフォルトの名無しさん
2009/06/15(月) 22:57:070984デフォルトの名無しさん
2009/06/15(月) 23:47:37お前はマ板にでも行け
0985デフォルトの名無しさん
2009/06/16(火) 00:19:350986デフォルトの名無しさん
2009/06/16(火) 03:14:470987デフォルトの名無しさん
2009/06/16(火) 03:33:048進数と2進数の立場がないのは可哀想であろう。
0988デフォルトの名無しさん
2009/06/16(火) 03:36:320989デフォルトの名無しさん
2009/06/16(火) 03:46:11次スレ最後のコメントがC++2009完成ヤホーイになることを期待して・・・
ほい次スレ
つ
・・・スレ立て規制ではじかれた(>_<)
誰かよろ
0990デフォルトの名無しさん
2009/06/16(火) 03:58:35http://pc12.2ch.net/test/read.cgi/tech/1245092251/
0991デフォルトの名無しさん
2009/06/17(水) 00:08:090992デフォルトの名無しさん
2009/06/17(水) 00:08:530993デフォルトの名無しさん
2009/06/17(水) 00:09:440994デフォルトの名無しさん
2009/06/17(水) 00:10:270995デフォルトの名無しさん
2009/06/17(水) 00:11:080996デフォルトの名無しさん
2009/06/17(水) 00:15:490997デフォルトの名無しさん
2009/06/17(水) 00:17:070998デフォルトの名無しさん
2009/06/17(水) 00:20:410999デフォルトの名無しさん
2009/06/17(水) 00:22:121000デフォルトの名無しさん
2009/06/17(水) 00:22:5010011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。