1read 100read
2013年01月プログラム75: C++11/C++1y 16 (423) TOP カテ一覧 スレ一覧 2ch元 削除依頼
***Javaのオススメ入門書*** 『創るJava』 3.0 (566)
Perlについての質問箱 57箱目 (373)
小学生プログラマだけど質問ある (259)
【コメント】doxygen【コンソメ】 (511)
Rubyについて Part48 (212)
main以外★mallocの後にfree不要と言うバカいるの? (457)

C++11/C++1y 16


1 :2012/10/04 〜 最終レス :2013/01/15
The C++ Standards Committee
http://www.open-std.org/jtc1/sc22/wg21/
Wikipedia
http://ja.wikipedia.org/wiki/C%2B%2B11
C++11/C++1y 15
http://toro.2ch.net/test/read.cgi/tech/1333433900/

2 :
君が死んでからもう1年。
君は今も僕を見守ってくれているのかな?
君は、僕の生まれて初めて出来た彼女だった。
すごく嬉しくて、幸せだったなあ。
突然、白血病だって医者に宣告されてから、君は病室で日に日に弱っていった。
「病院ってひまねえ」って笑う君を見て、僕はいつも泣いていたんだ。
君の為に、僕の小汚いノートパソコンをあげたら、君はすごく喜んでくれたよね。
ネットをするようになった君がいつも見ていたサイト、それが「2チャンネル」だった。
ある日君はいつものように、笑いながら言った。
「ほら、見て今日も2ゲット出来たよ。」
「あまりパソコンばっかいじってると身体に障るよ」
なんて僕が注意すると、「ごめんねえ。 でもね、これ見てよ。
ほら、この3のひと、2げっとぉ!なんて言っちゃってさぁ、ふふ」
僕は黙っていた。君がすごく楽しそうで、僕は何も言えなかった。
「ほらみて、この3のひと、変な絵文字使ってくやしぃ〜!だって。かわいいねえ。 ふふ。」
僕はまだ黙っていた。笑う君を見て、どうしようもなく悲しくなった。
「憶えててくれるかなあ」 君がふと言った。
「…この3のひと、私がいなくなっても、あの時変な奴に2をとられたんだよなーなんて、憶えててくれないかなあ……無理かな……憶えてて、ほしいなぁ……」
それから数ヶ月後、君は家族と僕に見守れながら息を引き取った。
君はもうこの世に居ない、なのに僕は今F5を連続でクリックしている。
君の事を、3のひとが忘れないように、いつまでも、いつまでも忘れないように。
天国にいる君と一緒に、今ここに刻み込む
        2 ゲ ッ ト

3 :
>>1


4 :
前スレ最後の盛り上がりはどこへ?

5 :
スレをまたいで引っ張るようなネタか?

6 :
C++はRー言語。
業務アプリケーション開発には危険過ぎて使えず。
組み込みではCで充分という奴に迫害され、
難解な言語仕様勉強してる俺SUGEEEな
人たちが自分のプライドを保つための
最後の砦。

7 :
組み込みでもわりと使われてるけど

8 :
>>6の言う組み込みは土方系だろう。

9 :
難解な言語ではあるが、概念的に高度というわけではなく
ただ単にこんがらがっているだけ

10 :
プログラム言語Pastaに改名しよう

11 :
>>6
C++出来なくても仕事はあるから心配ないよ

12 :
言語仕様よりも、実行環境のほうが何故か重宝される。
VCも.NETがあるけど、.NETじゃコンパイルを実行時に後回しにした…という感じにしか思えない。

13 :
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
マスコミも政党も大企業もネットも、日本は既に乗っ取られて操作されている。
B層よ、目を覚ませ。現在の日本は支配されている。 【疑う前に以下を見よ】
子供に教えられるかどうかで子供と日本の将来は大きく変わる。
騙されたと思って一度だけ、真摯に受け止めてみてよ。
http://s.webry.info/sp/stktakemoto4216.at.webry.info/201201/article_10.html ★本題
http://s.webry.info/sp/stktakemoto4216.at.webry.info/201201/article_11.html 政党
http://s.webry.info/sp/stktakemoto4216.at.webry.info/201201/article_9.html マスコミ
http://s.webry.info/sp/stktakemoto4216.at.webry.info/201201/article_60.html 1995
http://kenjyanoturugi.seesaa.net/article/148207356.html 乗っ取られる日本
http://archive.mag2.com/0000154606/20081014060012000.html 政治経済の真実
http://oujyujyu.blog114.fc2.com/blog-entry-328.html 日本企業乗っ取り
http://www36.atwiki.jp/anti-rothschild/pages/15.html 戦後の金融資本の歴史
http://koramu2.blog59.fc2.com/blog-entry-812.html ユダヤと反日朝鮮勢力
それでも何とか日本を守ろうと日々尽力を注ぐ日本勢力が現存する。
その勢力の反対勢力である左翼が「利権」と「原発」を徹底的に叩いている理由を解読せよ。
敵はマスゴミでも政党でも他国でもなく、背後で操る反日マイノリティー勢力だと意識せよ。
反日マイノリティー勢力の短期的目標は領土ではなく、人権委員会設置と外国人参政権。
そして大デキレースが遂にはじまった。B層向け茶番劇放送である地上波は絶対に見るな。
スカパー!HD(JCSAT-3A,4A)の衛星専門局か、できればアルジャジーラ(AsiaSat-3S)を見よ。
今の日本の世の中はまさに映画マトリックスの世界。
B層よ、今こそ目覚める時。
そして今後は各々で独立して情報分析して行動せよ。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
※ この書き込みに対して【日本語がおかしな者】の妨害が入る様になりました。事実であるが故に反証できない上記内容が都合悪い様です。上記内容は特定の論者によるものではありません、念のため。

14 :
最近11の検討を始めたんだが、すごいな…
ラムダは待望だったから嬉しいけどけど、右辺値参照(だっけ?)にはワロタ
確かに使いどころによっては便利かもなとは思ったけど、マニアックすぎる
総じて、痒いところに手が届くのは嬉しいが、これから始める人には辛いかもな
ますますオッサン言語化してる気がするよ

15 :
というか今まで無かったのがなぞだよな右辺値参照って

16 :
代入や引数渡しの所で記述できるように言語でサポートするのは面白いよね。
高レベルのレイヤーでの利用ノウハウが溜まったら、
他の言語でも類似の機能がサポートされたりして。

17 :
っていうか右辺値参照みたいなのが必要になるのはオブジェクトが変数に埋めこまれるからで
オブジェクトといえばすべて参照経由な主流OOPLでは要らん機能だしなあ
埋めこみオブジェクトなOOPLって、C++以外だと何があるんだ

18 :
pre-Portland mailing 見るとまだまだお偉いさん方はC++いじる気満々だなw
新機能実験場というか論文のネタ場というか
ちっとは現場でメンテするプログラマのことも考えてほしいぜ

19 :
conceptが今後採用されることになれば
どうせ大規模な変更になるんだから
小手先のことなんてどうでもいいよ。

20 :
boostは完成しないからこそboostであり続ける

21 :
>>17
右辺値参照をメモリ管理だけの問題に矮小化しないでください!(怒
束縛と代入の動的な側面をプログラミング可能にし、
新しい意味や文脈を与える野心的な試みなんです。
問題は野心的過ぎることだけです。
全てのプログラミング要素は、最終的には右辺値参照に集約されるんですYO.

22 :
pre-Portlandにコンセプト関係の論文1つもないんだけど

23 :
pre-Kona で新しいのが提案されてる >concept
そのままC++Nowのキーノート・スピーチで解説されてた。

24 :
G++ now supports a -std=c++1y option for experimentation
with features proposed for the next revision of the standard,
expected around 2017.

25 :
右辺値参照、いくら話を聞いても使いドコロが分からない。
でかいコンテナの単なるコピーとかしないし・・・
英語でもいいから、何かよいリファレンスを教えてください。

26 :
使いどころっつったら std::vector<std::unique_ptr<T>> だろ常考

27 :
http://ja.m.wikipedia.org/wiki/C%2B%2B11

28 :
http://slashdot.jp/journal/507551/C%2B%2B%E5%8F%B3%E8%BE%BA%E5%80%A4%E5%8F%82%E7%85%A7%E8%A7%A3%E8%AA%AC

29 :
使い所を考えるような物じゃなくて
不必要なコピーを出来るだけ無くしたるわってもんだからな

30 :
ムーブのメリットは様々な処理をノースローにできる事

31 :
右辺値参照はそれだけの話じゃないよ
今まで非共有スマポをコンテナに入れられなかったのは
コピーが不必要ではなく害悪だったから
害悪なコピーを回避するためにも右辺値参照は重要

32 :
>>31
って
>>26
のことだよね?
これは分かりやすいけど使わんのだよ。
たとえば
container<T> func() {
container<T> res;
...
return res;
}
みたいな関数をよく書くのですが、
最後の行を
return std::move(res);
にすれば使ってることになる?

33 :
書かなくてもそうなる

34 :
>>33
なるほど。
でもそれ以外のタイミングでコピーすることはないんだよなぁ。
自分のコーディングスタイルの問題なのかな?
・・・ちょっとスラドの記事よみ直してみます。
以前読んだけどありがたみがわからんかったので。

35 :
ぱっと眺めてなんとなく思ったのは、人様のライブラリを作ったことがないからかも。
すべて自分で書くぶんには、でかいオブジェクトのコピーを避けるように意識してるから、
operator=とか使わない習慣ができちゃってるのかも。

36 :
>>34
誰もコンテナのコピーの話なんてしてないぞ
要素のコピーの話しかしてない
従来仕様では push_back すら不可能
引数を使って新しい要素をコピーコンストラクトするから
非共有スマポは使えない
これがムーブできるようになったので大丈夫になった
メモリの再確保なんかもそうだな

37 :
>>32
container<T>が特殊なリソースを保持するハンドラでコピーはできんけど
func みたいな生成関数を用意したい、てときにマジ便利
しかもそんな特殊なハンドラを標準コンテナにいれても良いンだぜ

38 :
純粋仮想関数の書き方ってC++11でも
virtual void func() const = 0;
なんですか?
=0のかわりに=hoge
みたいなのが新しくできてたりしません?

39 :
#define hoge 0

40 :
= 0 があったら virtual は省略可にならないかな

41 :
#define pure 0
virtual void func() const = pure;

42 :
std::unordered_mapを使っていて、
std::_Hashtable<...>::_M_find_before_node(...)
が呼ばれまくってるのですが、これはハッシュ値の衝突と関係ありますか?

43 :
いいえ

44 :
質問者です。
ttp://gcc.gnu.org/onlinedocs/gcc-4.7.1/libstdc++/api/a01197_source.html
をみてみました。(hashtable.hのソースコード)
いろいろ省略したけど、だいたいこんな感じですね。
for文で(あるハッシュ値に対応する)バケツの中を徘徊しているように見えますが、これが長いのか、そもそも呼ばれた回数が多いのか・・・
そもそも_M_find_before_nodeの呼ばれた回数見てみます。
//Find the node whose key compares equal to k in the bucket n. Return nullptr if no node is found.
_BaseNode* _M_find_before_node(size_type __n, const key_type& __k, typename _Hashtable::_Hash_code_type __code) const
{
_BaseNode* __prev_p = _M_buckets[__n];
if (!__prev_p) return nullptr;
_Node* __p = static_cast<_Node*>(__prev_p->_M_nxt);
for (;; __p = __p->_M_next()) {
if (this->_M_equals(__k, __code, __p)) return __prev_p;
if (!(__p->_M_nxt) || _M_bucket_index(__p->_M_next()) != __n) break;
__prev_p = __p;
}
return nullptr;
}

45 :
ここって、unordered_mapの実装について質問するところなのか

46 :
まあ確かに相談室のほうに投下するべきだったけど。
上の件は、やはりハッシュ値の衝突が原因でした。
パフォーマンスが2倍変わったよ。

47 :
boostみたいにshared_ptrのマルチスレッド対応をOFFにしたいんだけどどうすればできますか?

48 :
無い

49 :
まじすか…
C++の「使わないときにコストかけるな」っていう理念はどこにいったんですか?

50 :
atomic_is_lock_free

51 :
実装の問題を規格の思想に言われてもな

52 :
まあ細かいこといったらC++からしたら「そんな義理は無い」ってことで終わりなんだろうけどさぁ
でもその理念を見失ったらC++のアイデンティティを失ったも同義だしほかの言語に全部持ってかれちゃうよ?

53 :
どうぞどうぞご勝手に

54 :
作るのに1時間もかからんしスレッドアンセーフっていうか無駄な機能最大限省いたSPつくりゃいいよね
stdのはライブラリのインターフェースに使ったりとにかく可搬性ある汎用的なコード書きたい場合だけでいい

55 :
というかboost::shared_ptrでダメな理由がないんだが
std::shared_ptrはboostの劣化バージョンだから乗り換える理由が今のところない

56 :
どのあたりが違うの

57 :
constexpr boost::shared_ptr<int> p(nullptr);
static_assert(noexcept(p.reset()), "boost::shared_ptrでは今のところ無理");

58 :
劣化バージョンというあたりを詳しく聞きたい

59 :
boost::scoped_ptrはstd::unique_ptrに置き換えても大丈夫かな

60 :
劣ってる部分有るか?

61 :
業務連絡:gcc-4.8 に inheriting constructors が実装された模様

62 :
後でコード追いにくくなる継承より
tuple返すメソッドでゴッソリ代入出来る構文を用意し欲しかった

63 :
>>58
マルチスレッドをオフにできない
すでにブーストで書かれている過去の資産との親和性が低い

64 :
お薬出しておきますね

65 :
反論は論理的に
悪口だけのレスは無価値です

66 :
>>63
> すでにブーストで書かれている過去の資産との親和性が低い
「ブーストで書かれている」が頭悪そう

67 :
このスレかどうか忘れたけど
boost::shared_ptrとの相互運用の方法が書かれてたから
親和性はあるんじゃないかな

68 :
前スレにあったな。
http://d.hatena.ne.jp/yohhoy/20120921/p1

69 :
>>67
コストかかり過ぎ

70 :
shared_ptr使ってる時点でコストを気にするもんじゃないと思うが

71 :
>>70
だからただでさえやばいコストがさらに膨れ上がるんじゃ使い物にならない

72 :
そりゃ相互運用にはコストがかかるもんさ。でも親和性とそれは全く別問題だよね。
少なくとも親和性は低くない、というかこれで相互乗り入れできるんだから親和性は結構高い

73 :
でも結局両方使えるならノーコストのboost::shared_ptrが有利だろ?
結局のところstdのほうが無駄が多いことは同じ

74 :
boost信者はこれだから困る。
実行時コストなんかどうでもいいんだよ。
標準ライブラリかどうかっていうのは致命的。
機能的に同じことをするなら標準の方法で
実装した方が後でメンテする人に迷惑がかからない。
今から入社してくる後輩に「おじいちゃんブーストって何?」
なんて聞かれたくないだろ。

75 :
>>74
どうでもいいは言い過ぎ
…だが、そこ以外には激しく同意
会社では保守性一番

76 :
boost使ったら保守性さがるとか驚きだなどんだけ低レベルのPGが集まってるんだ
コミュニティに提言したらどうだ?お前んとこのライブラリは糞だってな

77 :
std::shared_ptrで作ったライブラリはC++03以前では使えない
しかしboost::shared_ptrで作ったライブラリは古いコンパイラでも動く。この差は非常に大きい
仕様策定からまだ間もないし実装が追いついて無いからまだ古いコンパイラ使ってるところのが多いしな
だから可搬性ではstdよりはるかにboostのほうが高いしコンパイラのバージョンを気にしなくて良い分だけ「保守性も高い」
今から入社してくる後輩に「先輩このコードぼくのコンパイラだとコンパイルできないんですけどたすけてください」なんて聞かれたくないわなめんどくせぇし
stdのが扱いやすいとか言ってる雑魚はまだ現実が見えてないよ
stdが今のboostのような便利屋的な立場になるのはおそらく11の次の規格への乗り換えが始まるころだろうな
このころになればコンパイラの実装もほぼコンプリートしているからstdに乗り換える理由がようやっと出てくる
それまではどこの会社でもこれならboostのほうがええわという結論が出るだろう
というか標準のバカどもが気を利かせてboostとの互換性を持たせるように仕様を決めればイイハナシなんだがな
boostは次期標準を視野に入れたほとんど公式のライブラリなんだから標準はboostに敬意を払い互換性を持たせるべき

78 :
お薬増やしておきますね

79 :
ほう。論理的反論は不可能なようだなwww

80 :
boostは準標準と見ていいよ
stdの仕様決めるC++標準化委員会の人達がboostコミュニティの中心なんだし

81 :
どこまで行っても準標準は標準にはなれないけどね
委員会メンバーもそれが分かっててわざわざ規格にブチ込んだわけだし

82 :
C++11のスレで、C++03以前の古いコンパイラがどうとか言ってるのは、まあ論外としても
まだドキュメントが少なくて利用実績のあまりない現状では、boost::shared_ptrを使うのは普通にアリだと思うよ
でも将来は「std::shared_ptrがあるのにわざわざboost::shared_ptrを使う理由が分からない」とか言われるんだろうな
結局ドキュメント類が多いほうが世の中に浸透するんだし、その点でISO標準に勝つのはどうしても難しい
(まあ、標準Pascal無視したDelphiとか、標準Basic無視したVBとか、例外はいくらでもあるが)

83 :
まあ混在させるよりはどっちかで統一させた方がいいと思う

84 :
>>83
となるとすでに使われてるboostなんだよなぁ

85 :
完全新規案件ならstd::shared_ptrで
ただし、C++11が普及してからな

86 :
>>85
現在は普及しているのか?

87 :
してないな
少なくともVSが対応してからだな

88 :
>>87
だとすると、「完全新規案件なら」というくだりは、まったく無意味な話か

89 :
完全新規案件で、かつ、C++11が普及していたら、という条件文だろ
どこが無意味なんだ

90 :
>>89
現時点では「C++11が普及していたら」が偽なので、少なくとも現時点では他に何が書かれていても無駄になる。

91 :
>>85
何をもって普及したとみなせるのか書いてないから
他人からすれば何も言ってないに等しいな
当人の脳内では自明なんだろうけど

92 :
>>90
>現時点では「C++11が普及していたら」が偽
Linux界隈ではVC気にしなくていいから、局所的な見方ができるなら偽と言い切れるものではないな
実際にはC++11でかつLinux案件とかを想定してるんじゃね
もちろん、何を以て普及したと見做すのかは>>89に聞かないと分からんけどな
(そしてその答えによっては>>89の文章全体が無意味になる)

93 :
してからな、って言ってるように、
今はまだ厳しいというイメージで言った

94 :
イメージとかそういうのはどうでもいい

95 :
脳内自明なイメージを
表現することなく
十分に書けたつもりに

96 :
Macで使えれば十分だよ
今後Mac以外は廃れるから考慮しなくてよい

97 :
おう

98 :
Macはもうない

99 :
今C++11やるならMacかLinux
普通はMacを使う

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
OpenGLスレ Part19 (206)
VBScriptについて必死に話し合うスレ (374)
正規表現 Part10 (494)
C++11/C++1y 16 (423)
VB.NET質問スレ(Part39) (656)
VB.NET質問スレ(Part39) (656)
--log9.info------------------
レジストリの掃除・最適化 Part39 (468)
☆こんなコンピューターウイルスは嫌だ☆ (832)
Windows8で入れておきたいソフトを書くスレ (277)
Windows 7 ボリュームライセンス (542)
Microsoft Office 2010 Part 4 (981)
お前らのWindowsマシンのスペックを書こう 2 (211)
Linar (画像ビューア)スレッド その3 (903)
最強クリップボード拡張ソフトはこれだ!Part9 (899)
【新世代】 Windows 7 Part71 (463)
Windows Home Server 2011 その8 (698)
Vista→Windows8を買い直しするヤツが涙目 (321)
今、クリップボードにある文字をペーストするスレ17 (536)
gdi++.dll・gdipp・ezgdi・MacType 25px (738)
低スペックだけどWindowsXPを高速化するスレ (263)
!ninjaしたい奴はここで (223)
IE4総合Part001 (725)
--log55.com------------------
婚活★こんな人しかいないのか!?体験談
嫁がアスペルガーで離婚した人
元旦那に関わりたくない為養育費もらってない人の数
☆ こういう男と結婚すると 失敗する ★
×1で結婚できたけどまた離婚したい
DVでっちあげて慰謝料ぶんだくった人いますか?
【元配偶者】幸せな再婚【今配偶者】
継父(((ママチチ))))が、連れ子を虐待多すぎ