- 1 名前:デフォルトの名無しさん mailto:sage [2015/06/05(金) 23:27:47.92 ID:pbJTQx9M.net]
- エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。 ◆ソースのインデントについて 半角空白やTABでのインデントはスレに貼ると無くなります。 そのため、アップローダーに上げるのも手ですが直接貼る場合は、 全角空白か に置換すると見栄えだけはよくなります。 【アップローダー】(質問が長い時はココ使うと便利) codepad.org/ (コンパイルもできるし出力結果も得られる[]privateをチェック) ideone.com/ (時間帯によってはcodepadが重い事があるのでここも
- 75 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 11:30:31.65 ID:EWXbILw8.net]
- >>67
ラムダ使えない時代に生まれたライブラリでも ラムダ使えるようになって以後にバージョンアップされてりゃ排除しなくていいのでは?
- 76 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 12:36:55.37 ID:K1SJqQ2p.net]
- >>72
ならいつがいいの? よりいい範囲があるなら教えてくれよ。 >>73 最終更新日がわかるならその方がいいかもしれない。 ただ、ラムダ無しで作ってるものをラムダが使えるようになったからと言って書き直さないと思うので作成日で区切るのもありだと思う。
- 77 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:24:45.89 ID:ZnWobP75.net]
- >>74
なんで範囲を絞る必要があるの? 現在アクティブなオープンソースのライブラリプロジェクトを1000個かき集めて そのうちラムダ式使ってるのは何個あるのか数えてみるだけの話でしょ?
- 78 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:28:19.92 ID:ZnWobP75.net]
- >>74
> ラムダ無しで作ってるものをラムダが使えるようになったからと言って書き直さない え?どうして?
- 79 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:30:32.32 ID:gaMby9Ja.net]
- 更新日で考えるのはおかしい
たとえば2012年以降はメッセージの修正しかしてないものが >>43の根拠として「ラムダが使えるのに使っていない」にカウントされたらそれは不適切
- 80 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:36:55.42 ID:1Z1vAYw+.net]
- >>77
全然違う話題の43なんか持ち出して話を混ぜんなよWW
- 81 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 18:42:25.76 ID:R5Ka64Bk.net]
- >>77
まず事実を測定してみないか? まず測定を終えてからどうこう思考してみようよ 「どうあってほしい」から始まって 「カウントしてほしくないものをカウントしないためにはどういう条件で排除すればいいか」 の議論を延々続けて測定の着手をさせない努力をするのは 技術の分野ではなく宗教の分野のようだよ
- 82 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:01:09.87 ID:j1SWbXbS.net]
- A「Nの数が少ないからXである
B「Nの数を根拠にすることはおかしくね? C「まず数えてから考えてみよう 実際に数えずに語るのは宗教 Cは話を逸らすだけの詭弁野郎wwww
- 83 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:12:36.50 ID:IV7PJrm5.net]
- そもそも>>43は「俺は一つも見たことない」だから
「千個中何個か発見した」という結果が出ても何の根拠にも使えない つうか、全然違う話でしょ
- 84 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:13:47.98 ID:3MbxbYsx.net]
- >>80
Aに該当するレスはこの場に存在してない
- 85 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:15:30.46 ID:ipNXiW4b.net]
- >>80
> A「Nの数が少ないからXである この「Xである」の話はひとつも出てなくね?
- 86 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:17:48.06 ID:ipNXiW4b.net]
- >>80
> B「Nの数を根拠にすることはおかしくね? 誰も根拠にするなんて言ってないのに、妄想の人が根拠にするなと騒いでるだけだよ
- 87 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:20:25.51 ID:zGKuJ7ry.net]
- >>80
数えずに語るのが宗教だなんて話は出てませんぜ
- 88 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:33:46.57 ID:7kWsK557.net]
- >>75
>>69 とか >>71 を読んで理解できないなら、話に無理に加わらない方がいいと思う。 >>76 大抵のプログラマは動いているものをいちいち書き直すほど暇じゃない。 >>77 正確でないのは承知してるので、いちいち反例をあげる必要はないよ。 そもそもその件は >>74 の後半に書いてある。 >>79 よろしくお願いします。
- 89 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 19:50:48.65 ID:YprfgWl4.net]
- くっだらねえ
そんな統計とって何の足しになるんだか ラムダ使ったほうが効果的なところでは迷わず使えよ 汎用性がなく一箇所でしか使われないコードとか
- 90 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 20:20:51.03 ID:mNJlRwVf.net]
- >>86
ラムダ使わずに作ったものは後からラムダ使うように改造しないという信念があるの? その考え方は驚きの初耳なんだけど
- 91 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 20:24:02.64 ID:yngeaFwE.net]
- >>80
このXである、がない あるいは個々人の考えで補完されてるまま話が続こうとするから Bの主張が正しいかどうか判別できない 1000個あるライブラリからラムダ式を使っているのは2つくらい ここから言えることは何か?
- 92 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 20:53:20.65 ID:KoeeUimc.net]
- 新しそうなライブラリを10個ほど見てみたが、ラムダ式は使われてなかった。
予想以上に存在しないのかもな。
- 93 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 21:02:34.04 ID:1Z1vAYw+.net]
- apache2なんか2002年以降に改めて作り直されてるのに
C99じゃなくC89前提で書かれてるもんな
- 94 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 21:23:54.99 ID:K0LPTxas.net]
- 利用者側が化石のパターンも少なくないからなぁ
全員が全員最新の環境ならもっとガンガン使えるかな
- 95 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 22:50:44.08 ID:7kWsK557.net]
- >>88
特段改造の必要もないけど、ラムダ使える〜って、ラムダ使うように手直しするって? ほとんど病気だぞ、それ w
- 96 名前:デフォルトの名無しさん mailto:sage [2015/06/12(金) 23:04:03.99 ID:Kc7Sj0Rn.net]
- むしろ使えるようになったら全部修正する無駄な作業が楽しい
- 97 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:23:42.99 ID:05Jv17Sn.net]
- >>93
脅迫性障害って奴な 楽しい人は別
- 98 名前:デフォルトの名無しさん [2015/06/13(土) 01:28:33.38 ID:ZgdEQxJ3.net]
- >>93
2000年以前に作ったライブラリを最近片っ端に改造して ラムダ式を与えるためのメソッド足して遊んでますけど みんなそうやって楽しくやってるんじゃないんですか?
- 99 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:35:16.38 ID:xzoa8IB+.net]
- 手間かけないためのプログラムなのに、手間増やしてどうする
- 100 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:37:21.89 ID:oLptQlzp.net]
- >>76
ラムダ無しで作ってるものをラムダが使えるようになったからと言って わざわざ書き直してラムダ対応する馬鹿は病気じゃないの? そんなことして何の役にも立たないのに何を無意味なことをしてるの?
- 101 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:39:55.45 ID:05Jv17Sn.net]
- 自己満足な人のHPはゼロよ!
- 102 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:44:56.34 ID:ydZkeZWj.net]
- そもそもC++11出てくる前に書かれたライブラリってC++03対応するのも必要だろうからラムダに書き換えるなんてことしないやろ
- 103 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:47:07.38 ID:QoUgxLhC.net]
- ラムダ入れないで済むならわざわざ入れない方がいいぞ
- 104 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:50:03.96 ID:vAcEoMEz.net]
- >>100
C++11正式化以降に作られたライブラリもC++03対応を重視してるぞ
- 105 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 01:55:35.98 ID:rgUmKvjC.net]
- オープンソースソフトウェアでラムダ式入れようとしたら「使わないでくれ。さもなくばフォークする」の議論が始まりますね
- 106 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 02:09:39.03 ID:N7uXhOC6.net]
- オープンソースの場合はラムダに対応してないコンパイラでも使えるコードの方が良い場合が多いからじゃね
業務で作るソフトとは状況が違う 古いコンパイラに対応する必要がない状況でラムダを避けるのはバカ
- 107 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 04:22:59.36 ID:Ito4e+Ww.net]
- 今から>>104に本開発プロジェクトのコーディング規約を説明する
・自作テンプレートの禁止 ・例外禁止 ・環境はgcc 3.3 ・変数は使い終わったらcloseを呼び出してヌルを入れること
- 108 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 09:19:55.15 ID:VPkV4eHU.net]
- >>105
おじいちゃん それはヌルではなくてナルというんですよ
- 109 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 09:26:05.97 ID:FQeTzdta.net]
- すでにあるコードをラムダ使うように手直しすることと、新規開発の区別もつかないバカ ⇒ >>104
- 110 名前:デフォルトの名無しさん [2015/06/13(土) 09:38:57.75 ID:jEfwhpow.net]
- 怒るなよ
- 111 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 09:43:02.98 ID:XtyRFZm/.net]
- >>105
jap char は使っても良いのですか?
- 112 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 09:55:10.15 ID:lYkKpzwR.net]
- >>86
> 大抵のプログラマは動いているものをいちいち書き直すほど暇じゃない。 2chに張り付きっぱなしの暇人のくせに
- 113 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 10:03:20.15 ID:y/hrQw57.net]
- まとめると
「ラムダ無しで作ってるものをラムダが使えるようになったからと言って書き直さない 「大抵のプログラマは動いているものをいちいち書き直すほど暇じゃない 「わざわざ書き直してラムダ対応する馬鹿は病気
- 114 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 10:03:34.93 ID:M8zBZxSF.net]
- >>110
自己紹介乙
- 115 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 12:33:25.81 ID:Sm9/2l6c.net]
- >>112
「自己紹介乙」とは言い返すボキャブラリーに貧した者が使う常套句 つまり「自己紹介乙」と言った時点で負けを認めた事を意味する
- 116 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 13:17:15.82 ID:oZyolcMH.net]
- 発 者 同 . 。_ ____ 争
生 同 .じ . /´ | (ゝ___) い .し 士 .レ .__/'r-┴<ゝi,,ノ ro、 は、 .な で .ベ ∠ゝ (ゝ.//` ./`| }⌒j .い し .ル } ⌒ /`ヽ、_∠l,ノ ・ヽ´ .! ! か の / ´..:.} >、、___, .r、 ソ、`\ / ..:.:.} / |∨ ` ̄ / ..:.:./ | 丶 / _、 ..:.:.:.{ .{.:.:. \ { ..:Y .ゝ、 {.:.:.:.:. ヽ |、 ..:/ 丿 .:〉 >.- ⌒ . ヽ / {. ..:./ ソ ..:./ .( ..:.:.:` ..:} ./..:.:}.:.:./ ヘ、 ..:./ .\ ..:.:r
- 117 名前:_,ノ、.:.:}
./..:.:/|.:/ {.:./ X.:.:}.} X X /..:.:/ .}.:| }:/ .Y丶ヽ Y.:Y . __/.:/ { } 《.〈、 _,,__>.:》丶 Y.:\ /.:.:.:.:.::/ !.:.:ゝ ゝ.:. ̄ヾ ´:.:.:.:.:.:.:.:.:ヾゝ \.: ̄> [] - [ここ壊れてます]
- 118 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 13:54:04.80 ID:jEfwhpow.net]
- なんでお前ら喧嘩腰なの?
仲良くしろよ
- 119 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 13:57:08.64 ID:+HguQo6y.net]
- こんなところでしか自己顕示欲を満たせないからね
本気になっちゃうのも仕方ないね
- 120 名前:デフォルトの名無しさん [2015/06/13(土) 14:00:37.39 ID:l7rw4EeF.net]
- 底辺同士仲良くやればいいのにね
- 121 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 14:48:45.77 ID:HgxUgyeK.net]
- 三度の飯よりプログラミングが好きなら
メリットなくても出来上がってるプログラムにラムダ付け足してみたりするだろ
- 122 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 14:56:37.53 ID:QxSJZHwk.net]
- 公開するコードなのか趣味コードなのかで話は違ってくるかな
というか言い争ってるのはここらへんの認識の違いじゃないか?
- 123 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:24:55.37 ID:kjnaZNV9.net]
- >>28
gcc 5.1.0 では-O3でもちゃんと 1 と表示されるな というか-O3にすると mov $0x1,%edx lea 0x184b(%rip),%rcx callq 0x4077a0 <printf(char const*, ...)> になってしまってラムダ式そのものが無くなってしまった
- 124 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:28:28.18 ID:RP8pqgiN.net]
- 三度の飯よりプログラミングが好きというのが一般人から見たら病気じゃないの?
- 125 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:41:52.80 ID:19wKs4Az.net]
- そんな奴いるか?
- 126 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:44:54.66 ID:xzoa8IB+.net]
- Cの勉強始めたばかりの頃って、そうだった
- 127 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:51:01.56 ID:kjnaZNV9.net]
- ちなみにintの最適化を妨げるためにvolatile intにしたら
movl $0x0,0x2c(%rsp) mov $0x2c(%rsp),%eax lea 0x1884(%rip),%rcx add $0x1,%eax mov %eax,0x2c(%rsp) mov $0x2c(%rsp),%edx callq 0x4077a0 <printf(char const*, ...)> となるんでインライン展開してるだけだね
- 128 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 15:52:31.01 ID:tR5e1Ncp.net]
- 三度の飯よりプログラミングが好きな人間ならば、ラムダ式を試すのにそんな不精はしない
- 129 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 16:58:17.52 ID:N7uXhOC6.net]
- 何のためにC++規格委員会様がラムダを入れて下さったと思ってるんだ?
使ったほうが良い場面ではつべこべ言わずに使え
- 130 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 17:39:58.10 ID:19wKs4Az.net]
- 関数、メンバ関数使ったほうが早くね?
- 131 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 17:51:15.73 ID:MHptqojw.net]
- int param = 100;
std::thread t1 { [&] { // 関数なんか使ってられるか } };
- 132 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 18:23:54.45 ID:xv1nvRDb.net]
- >>128
よくもそんな危険なコードを書けるな
- 133 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 19:48:03.77 ID:XbA3H8fd.net]
- join()かつ、本体側が変数いじったり参照したりしないなら問題ないが、そうでないなら、大変なことが起こる可能性がある
- 134 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 19:52:53.05 ID:hEJgokp/.net]
- 同時にいじるなら当然atomic_intとかmutexとか使うだろう
話を反らしてまでラムダが面倒ということにしたいの?
- 135 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 20:09:13.86 ID:jKGoCo7L.net]
- せっかくラムダの話がでているのだから
C++ のラムダってYコンビネータとか記述できますか?
- 136 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 20:20:15.07 ID:qOZIdXyk.net]
- できます
- 137 名前:デフォルトの名無しさん mailto:sage [2015/06/13(土) 20:21:20.65 ID:jKGoCo7L.net]
- 無理だとおもってたんですが
どんな感じになるのでしょう?
- 138 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 15:59:32.13 ID:HbVleRJY.net]
- >>118
三度の飯よりプログラミングが好きだから、過去のコード書き直すなんてつまらんことするより新しいコードを書くわ もちろん新しいコードはラムダ使いまくるが w
- 139 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 16:53:17.20 ID:W5WL6w7T.net]
- >>135
>新しいコードはラムダ使いまくる 不動点コンビネータの記述もできないラムダ式を「ラムダ式」と呼んでいるのか? 本当に三度の飯より好きなのか?
- 140 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 18:18:38.82 ID:BSAkVjAb.net]
- そりゃC++の規格でそういう名前になってるからね
- 141 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 18:31:07.63 ID:W5WL6w7T.net]
- そんな半端ものをコードに混ぜるとか正気じゃない
- 142 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 18:57:37.81 ID:SSUUjgo5.net]
- そりゃ、まっとうな判断能力を持つ者は
「機能Aを使うことで改善が期待できるか」に基づいて考えるからね。 「この言語の機能Aが他の言語と比べて同等か」 なんて他言語信者の思考はどうでもいい
- 143 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:04:59.17 ID:HbVleRJY.net]
- >>137
「不動点コンビネータ知ってる俺スゲー」君だろ w スルーでいいと思う
- 144 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:11:34.44 ID:W5WL6w7T.net]
- >>139
Lisp のラムダ式がついに来たかと期待したんだが羊頭狗肉なんだね‥ いいよ普通に関数オブジェクトで書いとくし
- 145 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:21:31.05 ID:VXo/YF5W.net]
- ラムダ関係なくて、ただ他人をコケにしたいだけだろうし
- 146 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:44:45.38 ID:W5WL6w7T.net]
- 新しい仕様を評価せずに飛びつくことを批判しているだけだが‥たぶんラムダ式は消える
- 147 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:47:48.73 ID:iglu1H/1.net]
- ラムダ式使ったほうが明らかに楽に書ける場面が多々あるから消えるわけねえよ
- 148 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 19:50:52.89 ID:TW+i3CDs.net]
- ジェネリックラムダ入るのに何言ってんだ
- 149 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 20:01:27.64 ID:W5WL6w7T.net]
- >>145
普通にメンバテンプレートを書けばすむ話 ラムダ式なんて,一行がずんだらに長くなるだけで大して可読性がよくなるわけじゃないんだよね…
- 150 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 20:13:10.23 ID:TW+i3CDs.net]
- メンバテンプレートを書きたくないからラムダにしてるのに…
ラムダ式で1行が長くなる? 一体何を言ってるんだこいつは…
- 151 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 21:30:40.12 ID:HAKGVyNP.net]
- >>143
たぶんラムダ式は消える(キリッ うわぁ……
- 152 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:09:03.21 ID:iOV4RdOh.net]
- ラムダとメンバーテンプレートに何の関係が?
- 153 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:14:22.91 ID:W5WL6w7T.net]
- >>149
それはさすがに調査不足‥>>143 としてもそこまでは面倒はみきれない
- 154 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:24:49.25 ID:O54UAv06.net]
- ID:W5WL6w7Tがどんなオレオレ理論を展開しようと、C++からラムダ式が消えることはないんだよなぁ
使いたくない人は使わなきゃいいだけ C++はそれを許してくれるよ やったね!
- 155 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:33:03.56 ID:lodH31Tw.net]
- C++でなにか消えたことってあるの?
auto_ptrはそれか
- 156 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:38:08.23 ID:ocyd5wvL.net]
- autoの元の使用法が無くなったな。
- 157 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:38:13.43 ID:W5WL6w7T.net]
- ここはやっぱり auto だろう
- 158 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:38:43.86 ID:RXXsbARc.net]
- Comeauさん「…」
- 159 名前:デフォルトの名無しさん mailto:sage [2015/06/14(日) 23:41:46.35 ID:+tOeM05v.net]
- タグディスパッチとswitchで分岐を書くのってどっちがいいんですか
- 160 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 01:51:36.58 ID:SEa1N02v.net]
- すっごい初歩的質問かもしれなくて申し訳ないが、int x,yに入ってるデータを入れ替える関数swap(int *a,int *b)を作成するとして
その関数の中身が*a=*a+*b;*b=*a-*b;*a=*a-*b; である場合、起きうる問題って何がある?*a+*bのアドレスに既に別のが割当られてるかもしれない?と思ったけどよくわからない
- 161 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 01:54:13.67 ID:DRt4UXNj.net]
- a,bにヌルが入ってくると例外
a = bの場合*a = 0が必ず返ってくる(a = bの場合変化しないことを期待されるかもしれない)
- 162 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 01:55:09.83 ID:DRt4UXNj.net]
- あと足し算でオーバーフローの可能性があるな
- 163 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 02:13:48.45 ID:SEa1N02v.net]
- >>158
おお、こんなに早く……ありがとう ちなみにtmpとか別の変数使わずにそれらを回避する方法ってある?
- 164 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 02:23:36.32 ID:Wlj6ZCex.net]
- なんでtmp使いたくないの?速度的にもtmpの方が157より速いだろ
- 165 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 02:25:47.57 ID:Wlj6ZCex.net]
- どうしてもスタック使いたくない理由があるならインラインアセンブラしかないんじゃない
- 166 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 11:34:57.01 ID:/ZXirDuW.net]
- int main(){
string tmp1 = "+D0mH`7R@Cux[{lPbwcTD;'pTkXY#1@"; string tmp2; tmp2 = tmp1.at(1) + tmp1.at(3) + tmp1.at(5) + tmp1.at(7); cout << tmp2 << endl; } 実行結果 c なぜ・・
- 167 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 12:32:08.80 ID:a384H5JL.net]
- 文字を連結してるんじゃなくて、charを足してるわけだが
- 168 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 12:54:45.60 ID:1FZGsYFn.net]
- charは整数だから、整数同士の四則演算ですね
- 169 名前:デフォルトの名無しさん [2015/06/15(月) 12:59:43.32 ID:/ZXirDuW.net]
- >>164-165
そういうことか!騙された!
- 170 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 17:27:49.20 ID:T7wqdyuw.net]
- 横からですが、>>163でtmp2に"DM`R"という値を入れる時はどうすればよいのでしょう?
- 171 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 17:34:24.36 ID:HDA/Cn6G.net]
- 適当に済ますなら、最初に string("") + tmp1.at〜
ってやれば string の + が呼ばれるんでないかい。
- 172 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 17:34:30.41 ID:T7wqdyuw.net]
- アホなので
tmp2 = tmp2 + tmp[1] + tmp1[3]+ ・・・ というやり方しか思いつかないです。もっとスマートな方法が・・・
- 173 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 17:35:19.62 ID:T7wqdyuw.net]
- >>168
やっぱそうするしかないですかね・・・
- 174 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 19:10:29.52 ID:vjf9P8uP.net]
- C++11なら
string tmp2{tmp1.at(1),tmp1.at(3),tmp1.at(5),tmp1.at(7)};
- 175 名前:デフォルトの名無しさん mailto:sage [2015/06/15(月) 21:39:29.41 ID:INXnVK+j.net]
- 一文字ずつ処理するならcharのほうがええな
|

|