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

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

C++相談室 part110

1 :デフォルトの名無しさん:2014/01/13(月) 22:48:05.34
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。

前スレ
C++相談室 part109
http://toro.2ch.net/test/read.cgi/tech/1388279736/

このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.88【環境依存OK】
http://toro.2ch.net/test/read.cgi/tech/1384061494/

次期規格C++1yはこちら
C++14/C++1y
http://toro.2ch.net/test/read.cgi/tech/1382889622/

■長いソースを貼るときはここへ。■
 http://codepad.org/
 http://ideone.com/

【重要】
hogeは禁止です。使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。

2 :デフォルトの名無しさん:2014/01/13(月) 22:49:13.65
STLつかうと一気に実行ファイルサイズが10倍に?!

環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない

すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。

C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。
とかいうエラーが出るんだけどこれってどうすればいいの?

#include <stdafx.h>
後死ね。

言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。

3 :デフォルトの名無しさん:2014/01/13(月) 22:49:58.80
----テンプレここまで-----

4 :デフォルトの名無しさん:2014/01/13(月) 23:54:39.00
個人的な思い込みに基づいて"hoge"の使用に過剰な反応をする人がこのスレに住み着いていて、
最近は「hoge禁止」がスレ住人の総意であるかのように見せる工作を繰り返しているようです。
あまり気にしないでやってください。

5 :デフォルトの名無しさん:2014/01/13(月) 23:56:21.78
↑ こういう嵐が最近出没します。注意して下さい

6 :デフォルトの名無しさん:2014/01/13(月) 23:59:52.33
>>1

7 :デフォルトの名無しさん:2014/01/14(火) 00:02:42.22
>>4はスクリプトコピペだからスルーよろ

8 :デフォルトの名無しさん:2014/01/14(火) 04:08:47.08
>>1
スレ立て乙

9 :デフォルトの名無しさん:2014/01/14(火) 05:39:42.23
最近c++やり始めたんですけど、C#でいうbyte型の配列ってc++ではどうやって再現すればいいんですか?

10 :デフォルトの名無しさん:2014/01/14(火) 05:52:21.50
char 配列[100];

11 :デフォルトの名無しさん:2014/01/14(火) 07:11:10.19
>>1
>hogeは禁止です。使用しないでください。
死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね死ね

12 :デフォルトの名無しさん:2014/01/14(火) 07:57:10.66
またいつものQZか
きちんとトリップつけろや糞コテ

13 :デフォルトの名無しさん:2014/01/14(火) 09:02:47.78
>>11を見てみろよw
hoge厨の自殺教唆だぞw

本当にhoge使う奴って韓国人か犯罪者しかいないなw

14 :デフォルトの名無しさん:2014/01/14(火) 09:12:55.73
hogeって何の略だよ

15 :デフォルトの名無しさん:2014/01/14(火) 09:15:12.42
>>11-14
↓こっち行け
【hoge】メタ構文変数【foo】
http://toro.2ch.net/test/read.cgi/tech/1388050606/

16 :デフォルトの名無しさん:2014/01/14(火) 10:01:14.42
>>15
こんなときばっかでしゃばるんじゃねーよごみ
hoge使って質問やサンプル投下するキチガイも誘導しろ低能

17 :デフォルトの名無しさん:2014/01/14(火) 10:32:49.99
>>16
何言ってんの?
「C++に関する質問やら話題やら」であればこのスレで合ってるんだよ。
そうじゃないから専用スレに誘導されてんだろ。何でこのスレでやろうとするの?

18 :デフォルトの名無しさん:2014/01/14(火) 12:15:02.76
>>17
C++の質問は構わないが、
hogeの使用に不快感を示す人が一部いて、
その人たちを煽ったりhoge連投して荒らす人がいて、
スレが荒れたので禁止になったのがこのスレなのだが。

19 :デフォルトの名無しさん:2014/01/14(火) 12:17:32.15
反hoge団体の人がアホってことで

20 :デフォルトの名無しさん:2014/01/14(火) 12:28:06.92
個人的な思い込みに基づいて"hoge"の使用に過剰な反応をする人がこのスレに住み着いていて、
最近は「hoge禁止」がスレ住人の総意であるかのように見せる工作を繰り返しているようです。
あまり気にしないでやってください。

21 :デフォルトの名無しさん:2014/01/14(火) 12:38:50.66
特定の文字列禁止といってるやつは

22 :デフォルトの名無しさん:2014/01/14(火) 12:41:29.15
hogo

23 :デフォルトの名無しさん:2014/01/14(火) 12:51:38.82
言葉狩りに必死な連中をC++のスレでみるとは思わなかったわ。

24 :デフォルトの名無しさん:2014/01/14(火) 13:02:14.56
hoge hoge (hoge hoge){
hoge(hoge(hoge,hoge)==hoge){
hoge(hoge);
hoge hoge;
}

25 :デフォルトの名無しさん:2014/01/14(火) 13:03:47.05
#define hoge
これでhogeは使えなくなった

26 :デフォルトの名無しさん:2014/01/14(火) 13:23:23.39
хогэ хогё

27 :デフォルトの名無しさん:2014/01/14(火) 14:18:06.22
>>25
いくらでも hoge 書けるってことに

28 :デフォルトの名無しさん:2014/01/14(火) 16:14:10.91
>>18
印象操作乙
hogeに不快感を持たない奴が2〜3人いるだけ

29 :デフォルトの名無しさん:2014/01/14(火) 16:15:51.94
hogeに不快感って言葉がもうぶっ飛んでるよね

30 :デフォルトの名無しさん:2014/01/14(火) 16:18:46.29
それに対してhoge撃滅篤志隊は交替で24時間365日休むことなく監視してくれている

31 :デフォルトの名無しさん:2014/01/14(火) 16:50:42.02
「料理の注文は構わないが、
ウンコの使用に不快感を示す人が一部いて、
その人たちを煽ったりウンコ連呼して荒らす人がいて、
レストランが荒れたので禁止になったのがこのレストランなのだが。」

ってことだな。
レストランでウンコに不快感を示さない人が一部なのか。

32 :デフォルトの名無しさん:2014/01/14(火) 16:55:08.89
豚肉の不快感を示すムスリムが謎の権利を主張して暴れた

33 :デフォルトの名無しさん:2014/01/14(火) 16:56:56.36
残業に不快感を示すプログラマたちが人権を主張して暴れた

34 :デフォルトの名無しさん:2014/01/14(火) 17:34:58.48
>>11のような典型的なhoge荒らしの行動を見れば
レストランでウンコを連呼どころか
レストランでウンコを連投の迷惑レベル。
特に姉妹スレでスレ立てしてコピペを連投した事件は記憶に新しい。

35 :デフォルトの名無しさん:2014/01/14(火) 18:03:28.67
>>33
※サービス残業は残業に含まれません

36 :デフォルトの名無しさん:2014/01/14(火) 18:09:15.12
災了拳の使い手である限りその呪われし宿命から逃れることはできぬのだ

37 :デフォルトの名無しさん:2014/01/14(火) 19:17:47.46
>>1
ちょっと気を抜くとチョーセン人が慰安婦像を立てやがる

38 :デフォルトの名無しさん:2014/01/14(火) 19:20:41.50
>>18
事実と異なる

hogeに相当するハングルがないので、妬ましくてしょうがない一匹のチョー
セン人が火病って自演を交えた荒らし繰り返しているだけ

39 :デフォルトの名無しさん:2014/01/14(火) 20:09:54.74
チョーンジンはウンコ投擲というチンパンジー並の国技を持ってるからなあ
お触り禁止

40 :デフォルトの名無しさん:2014/01/14(火) 20:33:08.23
ソントで勝利宣言とかな
あいつらホント頭おかしい

41 :デフォルトの名無しさん:2014/01/14(火) 20:34:00.07
ちょっと伸びてるかと思えばいつも同じ話題ばかりで飽きないのかね。
よそでやってくれ

42 :デフォルトの名無しさん:2014/01/14(火) 20:43:43.95
>>37=チョーンジンw

43 :デフォルトの名無しさん:2014/01/14(火) 20:57:11.81
「チョン」がチョンを指す言葉として定着
→差別ニダ→言葉狩り
→「朝鮮人」にも蔑視の意味を含めることが一般的になる
→差別ニダ→言葉狩り

「韓国人」にも(以下略)
この後はkoreanと呼べとでも来るのかな?
世界中で悪いことばかり続けてるからチョンが存在する限り無限に続くんだけど(笑)

44 :デフォルトの名無しさん:2014/01/14(火) 21:07:04.41
Qという一匹の基地外が
>>4,17,19,20,29,30,37,38,39とスレを荒らしているのか
はよid導入して欲しい
id無しじゃ荒らし報告でレス削除もままならない

45 :デフォルトの名無しさん:2014/01/14(火) 21:09:00.24
ちなみに最近のhoge変数を使用したサンプルの質問もQの自演

46 :デフォルトの名無しさん:2014/01/14(火) 21:35:55.90
p://chart-sabuch.jpn.org/chart/c.cgi?toro.2ch.net/test/read.cgi/tech/1388279736/

47 :17:2014/01/15(水) 00:31:13.00
>>44
俺はQなんて名前じゃないよ。

48 :17:2014/01/15(水) 01:48:38.41
俺もQなんて名前じゃないよ。

49 :デフォルトの名無しさん:2014/01/15(水) 02:32:02.95
>>21-48
↓こっち行け
【hoge】メタ構文変数【foo】
http://toro.2ch.net/test/read.cgi/tech/1388050606/

50 :デフォルトの名無しさん:2014/01/15(水) 02:38:34.93
サンプルにHOGE使ってるやつ全部ブックオフで売っぱらってきたわ

51 :デフォルトの名無しさん:2014/01/15(水) 03:23:57.88
ついでに祖国に帰れよ チョーセン人

52 :デフォルトの名無しさん:2014/01/15(水) 03:47:43.42
>>46
粘着タイプのグラフになってるときはだいたい「チョーセン人」って書き込んでる韓国人が来てるときだな。。。

53 :デフォルトの名無しさん:2014/01/15(水) 04:06:45.88
>>51
あんたリアルでもコリアンだってすぐばれるでしょ

54 :デフォルトの名無しさん:2014/01/15(水) 04:17:35.70
火病って連投するなよチョーセン
分かり易すぎるぞ

55 :デフォルトの名無しさん:2014/01/15(水) 08:04:45.26
HQGE

56 :デフォルトの名無しさん:2014/01/15(水) 08:09:07.51
hogeにうだうだレスつけてる人にお知らせです。
hogeに構ったら荒らしだって書かれてんだから、
hogeにレスはせず、NGにして黙りましょうねー?

57 :デフォルトの名無しさん:2014/01/15(水) 08:10:18.32
>>50
日本人著者は 本に大体入ってるから捨てたよ

58 :デフォルトの名無しさん:2014/01/15(水) 08:15:42.64
残ったのはハングルだけ
分かり易すいぞ チョーセン人

59 :デフォルトの名無しさん:2014/01/15(水) 09:48:35.30
チョーセンジン連呼すれば日本人になれるわけでもないのにな

60 :デフォルトの名無しさん:2014/01/15(水) 10:03:47.43
>>57
日本人著者でもhoge使ってない書籍がたまにある。
そういう書籍は6割くらいの確率でまともな内容だな。

61 :デフォルトの名無しさん:2014/01/15(水) 10:08:26.82
hoge使ってないクソ本のほうがはるかに多いわけだが

62 :デフォルトの名無しさん:2014/01/15(水) 10:52:29.72
「規格書以外の文書は規格書と同一では無いという一点において規格書より不正確であり即ちクソである」
なんとでも難癖つけようと思えばつけれるんだから気にするだけ無駄。

第一、参考にしてる書籍がクソだったとしても
「参考書が間違ってる、学びなおして来い」
なんて理屈で質問を拒否してたら最後には
「規格書を熟読してから来い」
なんて事になって相談の体を成さなくなるだろが。

まともに取り合うだけ無駄な主張だよ。

63 :デフォルトの名無しさん:2014/01/15(水) 10:54:42.77
こんなとこで暴れてないで「100% hoge 無添加」をうたい文句にした入門書を書け

64 :デフォルトの名無しさん:2014/01/15(水) 11:04:54.77
チョーセン人には無理

65 :デフォルトの名無しさん:2014/01/15(水) 11:05:10.58
>>62
規格書の不明な点について質問するのは理解できるが、
規格書を読めば誰でも理解できる明白な点について質問するのは
規格書をを代わりに読めと言うのに等しいから回答する意味も必要もないかと

66 :デフォルトの名無しさん:2014/01/15(水) 11:10:04.98
規格書を読むためには規格書を購入する必要がある
その点無料で公開されているMSDN読めとは事情が異なる

67 :デフォルトの名無しさん:2014/01/15(水) 11:13:08.76
つまり金払うの嫌だし図書館行くのも面倒だから、俺の代わりに読んで教えろよってこと?

68 :デフォルトの名無しさん:2014/01/15(水) 11:14:07.94
↓英語の規格書読めない奴はくるなとか言い出すアホ

69 :デフォルトの名無しさん:2014/01/15(水) 11:17:37.53
英語が読めないなら英語板で翻訳頼めばいいんじゃないかな。
プログラムとは全く関係ない質問なわけだし。

70 :デフォルトの名無しさん:2014/01/15(水) 11:17:54.60
>>67
端的に言えばそうだな。その見返りとして顕示欲の満足が得られる。

71 :デフォルトの名無しさん:2014/01/15(水) 11:34:26.48
>>61みたいな馬鹿は本を読んでも1割も理解できてないんだろうなw

72 :デフォルトの名無しさん:2014/01/15(水) 11:38:41.99
hogehoge...(ボソッ

73 :デフォルトの名無しさん:2014/01/15(水) 11:46:40.30
>>65
規格票を読んでもわからないことを誰が答えられるんだ? ここは WG21 そのものじゃないぞ

74 :デフォルトの名無しさん:2014/01/15(水) 11:56:07.42
>>69
プログラムの知識ないやつが翻訳したマニュアルみたことあるが、ひどかったぞ
function を機能と訳しているんだ

75 :デフォルトの名無しさん:2014/01/15(水) 12:12:18.80
MSDNの悪口はやめるんだ

76 :デフォルトの名無しさん:2014/01/15(水) 12:18:17.75
あれは酷いものだ。最悪否定文が逆転してたりするからな

77 :デフォルトの名無しさん:2014/01/15(水) 12:26:14.12
規格を読んだけど「コンストラクターとは何か」
がわかりませんでした。エロい人誰か教えて下さい。

「コンストラクターとはこのような特性を持つ」とか
「デフォルトコンストラクターとは」
という説明はあるのですが、
JavaやC#のような概念の明確な説明が見つけられませんでした。

78 :デフォルトの名無しさん:2014/01/15(水) 12:28:42.65
>>77
概念なんてJavaやC#と一緒

79 :デフォルトの名無しさん:2014/01/15(水) 12:29:24.46
JavaやC#と同じだろ。しらんが。
規格書でなく解説書見ろ。

80 :デフォルトの名無しさん:2014/01/15(水) 12:31:27.58
規格書はコンパイラ作成者が読むもの
コンパイラ作成者はC++の使い方を知らなくても作れるし
コンパイラ作成者以外が読んでも無駄(キリッ

81 :デフォルトの名無しさん:2014/01/15(水) 13:03:23.18
>規格書以外の文書は規格書と同一では無いという一点において規格書より不正確

>>62は論理的思考ができない人?

82 :デフォルトの名無しさん:2014/01/15(水) 13:10:05.92
>>7
・Cがデキるのかこれからなのか、っていうか遊べるくらいの技量でいいよ
・JavaなりC#がデキるのか、以下同文

83 :77:2014/01/15(水) 13:12:30.25
>>78-79
どこかに定義は書かれているのでしょうか?
「コンストラクターはこのような書式」
という説明はあっても
その書式であればすべてコンストラクターなのかどうか、
まず定義が見あたらないのです。

定義が解説書にしか書かれていないことは変だと思うのです。

84 :デフォルトの名無しさん:2014/01/15(水) 13:17:10.02
>>82
・Cがデキるのかこれからなのか、っていうか遊べるくらいの技量でいいよ
・JavaなりC#がデキるのか、以下同文

85 :デフォルトの名無しさん:2014/01/15(水) 13:20:17.36
>>83
コンストラクタをどう記述するか、いつ呼ばれるかは明確に記述されてるだろ
それ以上に何が要るんだ?

86 :デフォルトの名無しさん:2014/01/15(水) 13:24:42.27
>>84
コンストラクタがどういう位置づけで何に使えばいいか・ダメかなんて書いてないよ
そんなものは時の流れで変わる

87 :デフォルトの名無しさん:2014/01/15(水) 13:25:22.55
アンカミスった

88 :デフォルトの名無しさん:2014/01/15(水) 13:32:50.06
定義が無いとコンストラクタの書式と同じ関数に
コンストラクタのセマンティクスが適用されるか自明でない?
見落としてるだけで定義はどこかにあるだろ

89 :デフォルトの名無しさん:2014/01/15(水) 15:03:49.24
>>74
functionは名前出ててもそれが普通の単語だとソース断片載せてない限り関数か機能かわからねえからな
そーゆーの気付いたら細かく指摘してやれ

90 :デフォルトの名無しさん:2014/01/15(水) 15:50:33.00
>>85
満たすべき条件だけしか書かれてないってことは
プログラマはコンストラクタを書けても
コンパイラ屋がコンパイラを作れないぞ
(何を基準にソースコードをコンストラクタと判断するか)

91 :デフォルトの名無しさん:2014/01/15(水) 15:52:16.92
>>83
>「コンストラクターはこのような書式」
>という説明はあっても
>その書式であればすべてコンストラクターなのかどうか、
定義されてる書式ならばすべてコンストラクタに決まってるだろ。バカ

92 :デフォルトの名無しさん:2014/01/15(水) 20:55:08.20
そういやムーブセマンティクスや&&って、皆、理解してるの?
それとも、理解しないままプログラム書いてるの?
或いは、理解してるけど敢えて使わないようにしてるの?

93 :デフォルトの名無しさん:2014/01/15(水) 20:56:58.71
頑張って理解した。
ツール1本作って、少し壁を越えた感じ。

94 :デフォルトの名無しさん:2014/01/15(水) 20:58:05.99
ちなみに、私はEffective C++の第三版を読み終わったあたりで、
今後の人生では可能な限りc++を避けることを決心した

95 :デフォルトの名無しさん:2014/01/15(水) 21:01:50.86
>>92
理解したうえで社内で勉強会開いて浸透させるまでがデフォだろー

96 :デフォルトの名無しさん:2014/01/15(水) 21:07:21.41
std::forwardウザス

97 :デフォルトの名無しさん:2014/01/15(水) 21:11:15.06
>>91
論理的思考のできない人?
Aは条件Xを満たすと条件Xを満たすものはAは違うぞ

98 :デフォルトの名無しさん:2014/01/15(水) 21:24:36.06
>>92
簡単だろ

99 :デフォルトの名無しさん:2014/01/15(水) 21:27:53.80
はいはい
簡単だったんですね

100 :デフォルトの名無しさん:2014/01/15(水) 21:29:15.10
>>97
規格書には「条件Xを満たすものはコンストラクタ」が書かれている
条件Xが「定義されてる書式」だ
お前は論理うんぬん以前に日本語やりなおせ

101 :デフォルトの名無しさん:2014/01/15(水) 21:29:28.45
>>98
標準化委員会の人たちのブログを見て、薄っすらと理解したよ
なんで彼らはWebアプリをc++で書かないんだろうか

102 :デフォルトの名無しさん:2014/01/15(水) 21:32:30.54
そりゃブラウザでC++使えないからだろ

103 :デフォルトの名無しさん:2014/01/15(水) 21:34:42.52
WebアプリをC++で書こうとする奴=バカ

104 :デフォルトの名無しさん:2014/01/15(水) 21:35:08.44
CppCMS、Wt、TreeFrogと世界中にc++好きが居るけど使われないから不思議
PHPは甘え

105 :デフォルトの名無しさん:2014/01/15(水) 21:36:22.46
東京から名古屋まで移動したいときに
歩かずに新幹線を使う奴は甘え

106 :デフォルトの名無しさん:2014/01/15(水) 21:40:57.30
>>92
いまいち理解してないんだったらマジレスしてやろう。

下のコードの 「test」 にいろんな値をつっこんでみろ。
普通の値、関数、関数ポインタ、配列、関数の呼び出し結果、ありとあらゆるものだ。
そして test1 のどっちのバージョンが呼ばれるかよく観察するんだ。
「何が右辺値になるか?」ということがわかるようになるだろう。


template <typename T>
void test1(T&& x)
{

}

template <typename T>
void test1(T& x)
{

}

template <typename T>
void test(T&& x)
{
test1(std::forward<T>(x));
}

107 :デフォルトの名無しさん:2014/01/15(水) 21:47:04.81
完全転送を理解してない人に
>template <typename T>void test(T&& x)
を見せると勘違いするだろボケ

108 :デフォルトの名無しさん:2014/01/15(水) 21:49:54.06
そんなのは検索する気があるならいくらでも調べられること。
実際にやってみるのが一番身につくのはアホな俺だけではないはず。

109 :デフォルトの名無しさん:2014/01/15(水) 21:53:35.51
そんなら

template <typename T>
void test(T&& x)
{
test1(std::forward<T>(x));
test1(x);
}

としてどう違いがでるのかも見るべきだな。

110 :デフォルトの名無しさん:2014/01/15(水) 22:06:52.24
何が右辺値になるか
を教えるのにどうしてforwardが出てくんだよ

111 :デフォルトの名無しさん:2014/01/15(水) 22:16:35.04
ここは知識を自慢するスレなので

112 :デフォルトの名無しさん:2014/01/15(水) 22:19:44.08
>>110
「ありとあらゆるもの」の中には、「いったん右辺値参照で受け取ったもの」も入っているからさ。

113 :デフォルトの名無しさん:2014/01/15(水) 23:35:30.58
T + & → T &
T + && → T &&
T & + & → T &
T & + && → T &
T && + & → T &
T && + && → T &&
このルールを説明せずに関数テンプレの例を出すのは
イジメ以外の何物でもないと思うんだ

つまりT &&はTがX &の時に
X &になるって説明が必要

114 :デフォルトの名無しさん:2014/01/15(水) 23:51:02.03
それは知識としては知ってるだろ。

115 :デフォルトの名無しさん:2014/01/16(木) 00:10:54.74
ISO/IEC 14882:2011ぐらい知識としてしってる筈
故に右辺値参照で躓く奴は居きる価値無し

116 :デフォルトの名無しさん:2014/01/16(木) 00:17:22.86
>>102
emscriptenがあるじゃないか。

117 :デフォルトの名無しさん:2014/01/16(木) 00:18:44.07
&がゲシュタルト崩壊

118 :デフォルトの名無しさん:2014/01/16(木) 00:24:04.14
絶滅危惧種なんだから仲良くしろよ

119 :デフォルトの名無しさん:2014/01/16(木) 00:27:23.14
>>117
operator &
operator &&
operator *
operator *(T )
operator ->
を主体にしてプログラム作ったら完全に崩壊するだろうなw

120 :デフォルトの名無しさん:2014/01/16(木) 00:30:01.33
>operator &&
へんなもの作るな

121 :デフォルトの名無しさん:2014/01/16(木) 00:36:27.57
>>120


122 :デフォルトの名無しさん:2014/01/16(木) 00:44:02.04
>>119
まえ operator * を定義して階乗を計算するやつ作ったな。
a ** b とやると pow(a, b) になるの
本当は a * (*b)なんだけどなw

123 :デフォルトの名無しさん:2014/01/16(木) 01:03:02.08
階乗?累乗じゃねーの?

124 :デフォルトの名無しさん:2014/01/16(木) 01:25:47.05
このスレはISO規格を熟読した猛者が
初心者に知識をひけらかすことで
自尊心を保つためのスレになりました

125 :デフォルトの名無しさん:2014/01/16(木) 01:40:46.56
>>100
もともとの>>77が「みあたりませんでした」
なんだから記載場所ぐらい示してやれよ

126 :デフォルトの名無しさん:2014/01/16(木) 01:50:43.33
ISO/IEC 14882:2011ぐらい知識としてしってる筈
故に規格の理解で躓く奴は生きる価値無し

127 :デフォルトの名無しさん:2014/01/16(木) 01:54:46.25
>>125
> 「コンストラクターはこのような書式」
> という説明はあっても
これがそうだと言っている。ニホンゴワカリマスカ?

128 :デフォルトの名無しさん:2014/01/16(木) 02:01:13.71
>>127
規格読んでないから原文のニュアンスがわからんが
章番号ぐらい書けよ

129 :デフォルトの名無しさん:2014/01/16(木) 02:06:10.47
>>128
原文を入手できない人に章番号を教えて何の意味があるのかい?
章番号を確認できる状態にあるなら自分で原文読め

130 :デフォルトの名無しさん:2014/01/16(木) 06:59:21.87
ISO/IEC 14882:2011ぐらい知識としてしってる筈
規格も持ってない貧乏人は生きる価値無し

131 :デフォルトの名無しさん:2014/01/16(木) 07:07:29.99
などと言っている絶滅危惧種

132 :デフォルトの名無しさん:2014/01/16(木) 07:28:59.98
>>128
原文を引用しなかった質問者に言えよ

133 :デフォルトの名無しさん:2014/01/16(木) 07:30:51.35
「見あたりませんでした
「規格に書いてあるニホンゴヨメマスカ
「読んでないけど記載場所ぐらい示してやれよ
「原文を入手できない人に章番号を教えて何の意味が
相変わらずコミュニケーション能力が欠落したアスペどもだぜ
12.1の一行目に明確に書いてある
>Constructors do not have names
>A special declarator syntax is used to declare or define the constructor
→コンストラクタは名前を持たない
 コンストラクタの宣言定義には特別な構文が使用される
ただドラフトの方は表現がやや微妙。そっちをみたのか?
>Constructors do not have names
>A declaration of a constructor uses a function declarator(8.3.5) of the form…
これを
「コンストラクタは名前を持たない。一つのコンストラクタの宣言には以下の形式が使用される」
でなく
「コンストラクタは名前を持たない。一つのコンストラクタの宣言では以下の形式が使用される」
と読んでしまったんだろうか
出だしがconstructor(斜体) is 〜ならわかりやすいんだが

134 :デフォルトの名無しさん:2014/01/16(木) 07:50:35.63
ISO/IEC 14882:2011ぐらい知識としてしってる筈
規格も持ってなくて無料のドラフトにすがる貧乏人乞食は生きる価値無し

135 :デフォルトの名無しさん:2014/01/16(木) 08:23:21.32
コンストラクタとはなんだろう、よし規格をよむぞ!
 ↓
12.1 コンストラクタ
コンストラクタは名前をもたない。
 ↓
>>77

典型的なイラっとする説明ではある

136 :デフォルトの名無しさん:2014/01/16(木) 09:17:05.12
コンストラクタには名前が与えられない

137 :デフォルトの名無しさん:2014/01/16(木) 09:20:39.36
>>135
いや、それは>>133がアホなだけ。
肝心の定義はその後に箇条書きで3行ある

138 :133:2014/01/16(木) 11:14:18.08
>>137
3行が定義なのは理解した上で
・規格では明確なので>>77は読め
・ドラフト(1y)はそこへのつなぎが微妙かも?
と書いたんだが下3行が定義だ!と同じことを繰り返されても…

139 :デフォルトの名無しさん:2014/01/16(木) 11:17:26.39
通じてないから
> コンストラクタは名前をもたない。
と要約されるんだろ アホ

140 :デフォルトの名無しさん:2014/01/16(木) 11:40:26.04
>>135
期待と違う説明の典型だね
GNU は GNU is Not Unix である、という類の循環論法だ

141 :デフォルトの名無しさん:2014/01/16(木) 12:25:04.04
とりあえずコンストラクタの定義が12.1の冒頭に続く3つの箇条書きであることは>>137-139の合意が形成されたもよう

142 :デフォルトの名無しさん:2014/01/16(木) 12:38:35.97
ISO/IEC 14882:2011ぐらいは知識としてしってるべきもの
規格も持ってなくて無料のドラフトにすがる貧乏人乞食は生きる価値無し

143 :デフォルトの名無しさん:2014/01/16(木) 12:52:48.05
アンケートにご協力ください。貴方はどのような目的でこの規格書をご利用されますか?
1.コンパイラの作成のため
2.コンパイラの改善提案のため
3.無知な子羊たちを啓蒙し社会を発展させるため
4.匿名掲示板で無駄なアピールをしないとしんでしまう病とたたかうため

144 :デフォルトの名無しさん:2014/01/16(木) 17:59:18.22
5.C++の正しい仕様を理解して自己満足するオナーニのため

145 :デフォルトの名無しさん:2014/01/16(木) 20:48:59.93
6.好奇心を満たし並列化の果てで個を取り戻すため

146 :デフォルトの名無しさん:2014/01/16(木) 21:37:52.57
クラス設計について調べているのですが実際にどういうクラスを作りどのように書くのかが全くわかりません
関連、集約、コンポジション等も例があり説明されるとわかるのですが自分では考えられません
自分で考えられるようになりたいのですが参考になるサイト・書籍を教えてください

147 :デフォルトの名無しさん:2014/01/16(木) 21:40:03.51
>>146
だとしたらC++以外の言語で解説した本を探した方がいいだろう

148 :デフォルトの名無しさん:2014/01/16(木) 21:53:12.28
>>147
JAVAスレに行ってみます

149 :デフォルトの名無しさん:2014/01/16(木) 22:08:21.42
>>148
Smalltalk にいくべきだろうな

150 :デフォルトの名無しさん:2014/01/16(木) 22:46:18.98
struct hoge{...};
char c[sizeof hoge];
hoge* p = new(c) hoge;
bool b = (void*)p == (void*)c;

bは常に真になりますか?

151 :デフォルトの名無しさん:2014/01/16(木) 22:48:30.46
newがカスタムされてたら真じゃなくなる可能性が

152 :デフォルトの名無しさん:2014/01/16(木) 22:53:45.17
またいつもの流れか

153 :デフォルトの名無しさん:2014/01/16(木) 22:59:29.27
>>146
OSSのコード乱読
UMLエディタなんて徹底している

154 :デフォルトの名無しさん:2014/01/16(木) 23:14:42.72
>>150
質問するならまともな書籍かウェブサイトを調べてからにしろ。

155 :デフォルトの名無しさん:2014/01/16(木) 23:23:58.70
>>150
hogeを記憶したり書いたりする暇はあっても
必要な事柄を調べる時間はないわけか
お前みたいなゴミクズは社会に不要なんだよ

156 :デフォルトの名無しさん:2014/01/16(木) 23:57:47.45
>char c[sizeof hoge];
これって、c++だとコンパイルされるの?

157 :デフォルトの名無しさん:2014/01/17(金) 00:18:39.23
何か疑問でも?

158 :デフォルトの名無しさん:2014/01/17(金) 00:25:10.15
hoge厨を構う知恵遅れは何で試さずにきくの?

159 :デフォルトの名無しさん:2014/01/17(金) 00:30:34.75
>>158
>>156はC++を使ってるわけでもなくただ荒らし目的で住み着いてるだけだからC++をコンパイルできる環境がないんだよ。

160 :デフォルトの名無しさん:2014/01/17(金) 00:32:24.59
>>157
これって、コンパイル時に定数になってるの?

>>158
手元のコンパイラを通っても、仕様で未定義だったりしたらイヤだろ

161 :デフォルトの名無しさん:2014/01/17(金) 00:37:01.46
これがhoge厨の思考回路かwwwww
哀れだな、俺がこんな思考回路だったは恥ずかしくて生きてられないわwwwwwwww

162 :デフォルトの名無しさん:2014/01/17(金) 00:52:34.32
>>161
じゃあ死ね

163 :デフォルトの名無しさん:2014/01/17(金) 00:57:11.81
ラムダって、何やってるんだかわからないのが欠点だよね。

164 :デフォルトの名無しさん:2014/01/17(金) 01:02:07.90
むしろ何やってるのか簡潔にわかりやすくなるだろ

165 :デフォルトの名無しさん:2014/01/17(金) 01:03:22.99
いや、わかりにくいよ。
それはforループやwhileループと同じだよ。

166 :デフォルトの名無しさん:2014/01/17(金) 01:03:51.86
ブラックボックス的な話でしょ

167 :デフォルトの名無しさん:2014/01/17(金) 01:11:19.67
>>160みたいな馬鹿ってプログラミングに向いてないな

168 :デフォルトの名無しさん:2014/01/17(金) 01:13:01.71
>>165
ここにラムダ式がある。
ここにforループがある。
見て分かるのはそれくらいだからな。
意味は検索にひっかからないし。流れはわかりにくくなる。

pxxオブジェクト->deploy_XXXX( 〜
だの
create_XXXX( 〜
だのといった呼び出しとくらべての話だけどね。

169 :デフォルトの名無しさん:2014/01/17(金) 01:25:57.45
>>150
c が hoge 用にアラインされてないと動作は保障されない。
alignas(hoge) char c[sizeof hoge] なら、大丈夫。

配列 new でもないので、 b は常に真。

5.3.4 [expr.new] p14
> [ Note: when the allocation function returns a value other than null, it
> must be a pointer to a block of storage in which space for the object
> has been reserved. The block of storage is assumed to be appropriately
> aligned and of the requested size. The address of the created object
> will not necessarily be the same as that of the block if the object is
> an array. -end note ]

170 :デフォルトの名無しさん:2014/01/17(金) 02:36:14.76
>>157
()いらないの?

171 :デフォルトの名無しさん:2014/01/17(金) 02:40:29.18
>>170
お前と同じで不要なんだよ。

172 :デフォルトの名無しさん:2014/01/17(金) 03:32:41.03
>>150
しねよ。いつものホゲチキガイ。
スレを荒らすな。

653 デフォルトの名無しさん 2014/01/16(木) 21:10:41.29
hoge禁止だけじゃなくてsageまで強要するつもりか
死ねよ チョーセン人

173 :デフォルトの名無しさん:2014/01/17(金) 03:57:40.00
>>172
いい加減に死ね チョーセン人

174 :デフォルトの名無しさん:2014/01/17(金) 04:04:24.34
久しぶりに>>169を見た気がする。
珍しくマトモなこと書いてるじゃないか。
>sizeof hoge
コンパイルエラーだけどな。

175 :デフォルトの名無しさん:2014/01/17(金) 04:14:47.24
>>163
C++のラムダはC#と違って単純明快だ
ただのファンクターで値または参照のメンバーを持つだけ
C#のラムダのキャプチャーは裏で生成されるコードが凶悪すぎる

176 :デフォルトの名無しさん:2014/01/17(金) 04:42:29.79
>>174
hoge厨を構うな池沼



あ、このスレを荒らすのが目的ならどんどん構っていいよ

177 :デフォルトの名無しさん:2014/01/17(金) 05:04:20.59
pascal文化でポインタの向こうも言語側でなんとか面倒見ようとするから無理が湧いてくるんじゃないかな

178 :デフォルトの名無しさん:2014/01/17(金) 05:14:48.29
>>174
みんなお前の相手なんかしたくないんだよ。
早く失せろ。

179 :デフォルトの名無しさん:2014/01/17(金) 06:38:42.11
>>175
単純明快であり、かつ何やってるんだかわからないというものだよね。
>>168の意味で。なにしろ無名なんだよね。forループとかと同じで。

180 :デフォルトの名無しさん:2014/01/17(金) 07:00:18.72
C++ラムダで分かりやすいコードを書ける気がしない
オブジェクトの生滅が自己管理な世界にキャプチャをまんま持ってくるなんて悲惨な結末しか見えぬ

181 :デフォルトの名無しさん:2014/01/17(金) 07:04:20.56
だからデフォがコピーなんだろう

182 :デフォルトの名無しさん:2014/01/17(金) 07:12:10.06
プログラム内で繰り返し使う再利用性の高いものだったら、ラムダじゃなく
ファンクタとして独立したクラスにしたりするだろう。
反対に、その場限りの処理だと一々そんなことやってられないんで、ラムダが生きてくる。
それはつまり、ラムダ式の中は一つ一つ違うってことだ。
もしその違いが微妙で、数多く散らばっていたら。

183 :デフォルトの名無しさん:2014/01/17(金) 07:15:20.61
語弊があるな
ラムダはファンクタを簡単に生成するための文法だ

184 :デフォルトの名無しさん:2014/01/17(金) 09:00:49.07
個人的な思い込みに基づいて"hoge"の使用に過剰な反応をする人がこのスレに住み着いていて、
最近は「hoge禁止」がスレ住人の総意であるかのように見せる工作を繰り返しているようです。
あまり気にしないでやってください。

185 :デフォルトの名無しさん:2014/01/17(金) 10:51:42.61
↑は荒らしBOTによる定期コピペ
スルー推奨

186 :デフォルトの名無しさん:2014/01/17(金) 11:54:58.81
ということにしたいのですね。

187 :重要:2014/01/17(金) 12:49:26.26
【重要】
hogeは禁止です。使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
>>1を良く読んで下さい

188 :デフォルトの名無しさん:2014/01/17(金) 13:04:56.09
これは一部のボットでhogeを禁止にすることで、
foo,bar,bazのオシャレ先生に敗北しつつあるhogeを
復活させようとする巧妙な手口

189 :デフォルトの名無しさん:2014/01/17(金) 13:43:48.05
hogeを持たないチョーセン人が嫉妬で火病ってhoge禁止という慰安婦像をあちこちでたてています
こいつらはウソをついていないと生きていられない厄介な生き物なので信用しないようにしましょう

190 :デフォルトの名無しさん:2014/01/17(金) 15:29:56.66
>>189
自己紹介乙
お前韓国人だとばれてから堂々と荒らすようになったな

191 :デフォルトの名無しさん:2014/01/17(金) 17:15:47.18
>>189
・ホゲの使用可否についての議論が過去あった
・その結果を踏まえてホゲ禁止のこのスレがたった
この二つは事実。
だからhogeを投下し続けるオマエは嵐以外の何物でもない。
はよ回線切ってしね。

192 :デフォルトの名無しさん:2014/01/17(金) 17:41:28.64
ホゲの使用可否についての議論ってそもそもなんだよ

193 :デフォルトの名無しさん:2014/01/17(金) 17:48:18.47
どさくさで>>1にhoge禁止を混ぜたんじゃなかったっけ
やってることは隣国と変わらんな

194 :デフォルトの名無しさん:2014/01/17(金) 17:58:08.58
・hogeを使うと火病るチョーセン人が現れた
・チョーセン人はhogeが使われるたびにスレを荒らした
・チョーセン人はスレが荒れる事を口実にhoge禁止というルールを自演で作った
・チョーセン人が独断でテンプレにhoge禁止を入れたスレを立てた
・チョーセン人に反発する人がテンプレでhogeを禁止しないというスレを立てた
・チョーセン人はhogeコピペでスレをつぶした
・チョーセン人に反発する人がテンプレではhogeに触れていないスレを立てた
・チョーセン人はhogeが出てくるたびに口汚く罵り続けた
・チョーセン人が独断でテンプレにhoge禁止を入れたスレを立てた ← 今ここ

195 :デフォルトの名無しさん:2014/01/17(金) 18:03:16.51
ゴミ

196 :デフォルトの名無しさん:2014/01/17(金) 18:11:51.94
>>194
ワラタw
糖質か?w

197 :デフォルトの名無しさん:2014/01/17(金) 18:14:27.31
hogeにまでわざわざナショナリズム絡めてくるところを見るとどうやら隣国出身らしいな。

198 :デフォルトの名無しさん:2014/01/17(金) 18:30:49.01
まぁこのage荒らしも1ヵ月も経てば飽きるだろ
本物の韓国人なら飽きずに活動を続けるだろうけどw

199 :デフォルトの名無しさん:2014/01/17(金) 18:53:51.49
>>193
いや違うんですよ。
C/C++室スレの83〜86にかけて、一人のクソコテが
hogeアンチを煽り続けてスレを荒らしたのですよ。
hogeアンチも煽られて逆上したんですけど
それを見てクソコテが楽しんで煽り続けたんです。

それで賛否はあるだろうけどとりあえずhoge禁止にしないと
荒らされたままでC/C++スレが機能しない
ということで今のように禁止ルールが>>1に追加されたんです。
ホント、気のふれたクソコテはマジ死ねと言いたいですよ。

200 :デフォルトの名無しさん:2014/01/17(金) 19:21:25.53
>>197-198
頭の悪いチョーセン人はブーメランになってる事に気づかない

201 :デフォルトの名無しさん:2014/01/17(金) 19:30:50.47
# スルー検定中

202 :デフォルトの名無しさん:2014/01/17(金) 19:33:12.62
アンチがスルーすればなにも問題無い

203 :デフォルトの名無しさん:2014/01/17(金) 19:42:03.91
hogeが書き込まれなければなにも問題無い

204 :デフォルトの名無しさん:2014/01/17(金) 19:50:07.13
>>200
何でもいいけど、迷惑がられてる自覚はある?

205 :デフォルトの名無しさん:2014/01/17(金) 19:55:23.56
反論できない韓国人がブーメランでないものをブーメランって言っててワロタw
ブーメランってゆっとけば何とかなると思ったのかね。

206 :デフォルトの名無しさん:2014/01/17(金) 19:56:56.91
迷惑がられてるのはチョーセン人

207 :デフォルトの名無しさん:2014/01/17(金) 19:57:40.26
       ,..-――-:..、    ⌒⌒
     /.:;;;;;;;;;;;;;;;;;;;;;::.\      ^^
    / .::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::..ヽ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   :::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::
     :::::::;;;;;;;;;;;;;;;;;;;;;;;;;
       ::::::::::::::::::::∧_∧   そうやってなんでも
       :::::::::  < ::;;;;;;;;:>      hogeのせいにしてりゃいいニダ・・・
          _..  /⌒:::;;;;;ヽ
-― ―'ー'-''―-''/ / ::;;;;;;;;:| |―'''ー'-''――'`'
 ,,  '''' .  ''''' と./ゝ_;_;_ノヽつ   、、, ''"
    ,,, ''  ,,,    ::;;;;;;;;;::: ,,  '''''  ,,,,

208 :デフォルトの名無しさん:2014/01/17(金) 20:02:07.59
>>206
自覚があるならとっとと失せろ
ここはプログラムに関するスレだ

209 :デフォルトの名無しさん:2014/01/17(金) 20:21:57.63
チョンかどうかは分からないけど統合失調症の疑いがある。
統合失調症は早期に発見したほうが完治する確率は高いんだが・・・
病院へは行ったりしないんだろうな。

荒らしたくてチョーセン人チョーセン人騒いでるだけなら統合失調症ではないんだろうけど、
本気で思ってる場合はかなり危ない。

210 :デフォルトの名無しさん:2014/01/17(金) 20:38:18.44
そんなにhogeが嫌いならチョーセンに帰れば見ないで済むぞ

211 :デフォルトの名無しさん:2014/01/17(金) 20:43:56.73
>>209
年末に派遣切りにでも遭ってむしゃくしゃしてるだけだろ

212 :デフォルトの名無しさん:2014/01/17(金) 20:57:59.79
特定の意味のない言葉で発狂って精神異常だからな
ついでに、プドカタには精神異常が当たり前の朝鮮系脳が多いからな

213 :デフォルトの名無しさん:2014/01/17(金) 21:03:29.58
どこからチョーンジンが出てきたんだろうなw

214 :デフォルトの名無しさん:2014/01/17(金) 21:06:25.45
マッチポンプか無能な右翼脳のしわざ

215 :デフォルトの名無しさん:2014/01/17(金) 21:12:53.17
>>212
そうやってレストランで
「日常生活に密接に関連した、誰しも使う言葉」
といってウンコ、ウンコーと叫ぶのが朝鮮人なのでしょう。
トンスルとか一時は祭りになったし。

216 :デフォルトの名無しさん:2014/01/17(金) 21:33:59.58
foo,bar,bazってシャレオツ系という感覚があったのか。
逆に無骨な変数名とか内気そうな変数名とかもあんのかな?
個人的には物理・数学系の用語を連想させるものは無骨なイメージがある。

217 :デフォルトの名無しさん:2014/01/17(金) 21:35:06.21
ねーよ
キモプログラマ臭しかしない馬鹿っぽい単語

218 :デフォルトの名無しさん:2014/01/17(金) 21:35:53.06
hogeを使うなってのはパッと見なんの変数関数なのかわからないからってのがあるからまあわかるとして
なんで韓国や朝鮮の話になるんだ?

219 :デフォルトの名無しさん:2014/01/17(金) 21:39:14.73
いや>>188でそんなこと書いてあったし。

あとプレフィクスを律儀に付けてんのは話のわからないヤツってイメージあるな。

220 :デフォルトの名無しさん:2014/01/17(金) 21:41:59.51
>>218
頭のおかしなQは昔から相手を誹謗するときに
「チョーセン人」「鮮人」を多用するので
特に意味はない

221 :デフォルトの名無しさん:2014/01/17(金) 21:43:58.17
ハンガリアンってよいよね

222 :デフォルトの名無しさん:2014/01/17(金) 21:45:37.21
>そんなにhogeが嫌いならチョーセンに帰れば見ないで済むぞ

キチガイの故郷はインターネットも無いのかよw

223 :デフォルトの名無しさん:2014/01/17(金) 21:54:57.78
以前コードレビューしたとき、リリースソースにあるまじき変数名が大量に残っていたことがあった。
ひと通りコメント付けた後、最後に
「ちょっと全体的に臭いです」
と書いて返してやった。

先方からは一言もレスポンスが無かったw

224 :デフォルトの名無しさん:2014/01/17(金) 22:00:00.95
ハンガリアン禁止になってる。
使ったことはないが。

225 :デフォルトの名無しさん:2014/01/17(金) 22:30:28.64
> 先方からは一言もレスポンスが無かったw

まあ、>>223 みたいなところとは取引やめるわな (w

226 :デフォルトの名無しさん:2014/01/17(金) 23:02:46.12
ハンガリアンが良いということはOOPがいかに冗長なコードを書かせるかって
ことじゃないの?
実際に使いやすいしね。
使いやすいってことは何かがダメなんだと思う。

227 :デフォルトの名無しさん:2014/01/17(金) 23:12:27.65
何が言いたいのかわからない

228 :デフォルトの名無しさん:2014/01/17(金) 23:13:06.84
不自由な日本語

229 :デフォルトの名無しさん:2014/01/17(金) 23:45:28.62
教育勅語

230 :デフォルトの名無しさん:2014/01/17(金) 23:45:34.73
自由な日本語でしょ

231 :デフォルトの名無しさん:2014/01/17(金) 23:54:17.87
美しい日本語

232 :デフォルトの名無しさん:2014/01/18(土) 01:34:46.83
ハンガリアンは20年前の貧弱な開発環境を補うために生まれた知恵だよ

233 :デフォルトの名無しさん:2014/01/18(土) 01:39:26.02
じゃあエイリアンは?

234 :デフォルトの名無しさん:2014/01/18(土) 01:43:25.03
>>224
アプリケーションハンガリアンとシステムハンガリアンの両方禁止されてんの?

235 :デフォルトの名無しさん:2014/01/18(土) 03:39:10.65
ホゲが良いということはチョージンンがいかに冗長なコードを書かせるかって
ことじゃないの?
実際に使いやすいしね。
ホゲに嫉妬するチョーンジンは何かがダメなんだと思う。

236 :デフォルトの名無しさん:2014/01/18(土) 04:49:15.67
江○添:アスペ(人との会話のキャッチボールが困難)
qz:糖質(さらに妄想が見えて不可解な言語を繰り返す)
片○山:ただのばか

C/C++自体が疾患みたいなもの

237 :デフォルトの名無しさん:2014/01/18(土) 06:56:04.98
チョーンジンってなんだよ。

238 :デフォルトの名無しさん:2014/01/18(土) 08:32:56.89
挑戦人

239 :デフォルトの名無しさん:2014/01/18(土) 08:43:53.03
嘲餞人

240 :デフォルトの名無しさん:2014/01/18(土) 09:43:10.10
>>236
ワロス

241 :デフォルトの名無しさん:2014/01/18(土) 10:26:39.54
>>234
アプリはOKだがそれもあんまり使わないなあ。
ところで r ⇔ l (右辺値 ⇔ 左辺値)のプレフィクスってシステム?アプリ?

242 :デフォルトの名無しさん:2014/01/18(土) 10:56:25.76
>r ⇔ l (右辺値 ⇔ 左辺値)のプレフィクス

ちょっと何言ってるかわからない

243 :デフォルトの名無しさん:2014/01/18(土) 11:09:23.95
>>241
どういう場面で使うのかよくわからんな

244 :デフォルトの名無しさん:2014/01/18(土) 11:19:26.74
>>242
右辺値に r_xxx
左辺値に l_yyy
といった変数名を使うって意味だけど?

245 :デフォルトの名無しさん:2014/01/18(土) 11:20:14.91
×右辺値
○右辺値参照

×左辺値
○左辺値参照

246 :デフォルトの名無しさん:2014/01/18(土) 11:29:59.16
参照を表すために
ref_???/rref_???/lref_???/x_???
とするならまだしも
l_???/r_???とかアホ杉

247 :デフォルトの名無しさん:2014/01/18(土) 11:33:52.80
>>244
そういう使い方を名前で明示する意味がわからないって事だと思うけど

248 :デフォルトの名無しさん:2014/01/18(土) 11:35:18.65
〜Wikipedia ハンガリアンより〜
『クラス CHoge』

249 :デフォルトの名無しさん:2014/01/18(土) 11:38:51.59
>>233
平安京エイリアンのために作られたんだろ (w

250 :デフォルトの名無しさん:2014/01/18(土) 11:38:57.79
>>248
奴らはユーモア欠乏症だからな

251 :デフォルトの名無しさん:2014/01/18(土) 11:46:23.04
class A {
 B b;

 //明らかにシステハンガリアン
 A(A && rr_other) : b(move(rr_other.b)) {}

 //どちらかというとアプリケーションハンガリアン
 A(A && xv_other) : b(move(xv_other.b)) {}
};

252 :デフォルトの名無しさん:2014/01/18(土) 11:48:20.57
template <typename T>
auto func1(T&& r_xxx);


template <typename T>
auto func1(T& l_xxx);


template <typename T>
auto func(T&& val)
{
func1(std::forward<T>(val));
・・・
}

func->func1に転送
func1がオーバーロードされてて、その引数名とか

253 :デフォルトの名無しさん:2014/01/18(土) 11:50:38.42
>template <typename T>
>auto func1(T&& r_xxx);

右辺値参照か左辺値参照かでなく
&の数でハンガリアンとか、死んだ方がいいね。

254 :デフォルトの名無しさん:2014/01/18(土) 11:55:18.76
func1の場合はそれでいいんじゃね?
使うかどうかは別だし 、実際には使ってないんだろう。

255 :デフォルトの名無しさん:2014/01/18(土) 11:58:48.29
>>254
Tがint&の時r_xxxはint&だろ。func1は良くねーよ

256 :デフォルトの名無しさん:2014/01/18(土) 11:59:17.34
つーか、ハンガリアンに頼らなくても可読可能なコード書けや!
このΗοGe野郎ども!

257 :デフォルトの名無しさん:2014/01/18(土) 11:59:59.51
そりゃfunc1はfuncから呼ばれる以外の使い方はされないて前提なんだろ

258 :デフォルトの名無しさん:2014/01/18(土) 12:03:56.85
>>257
funcが左辺値で呼ばれたらTはint&だろう。

259 :デフォルトの名無しさん:2014/01/18(土) 12:08:03.54
>>258
で?

260 :デフォルトの名無しさん:2014/01/18(土) 12:10:11.52
double &&rref_pi = 3.1;
const double &lref_e = 2.7;

261 :デフォルトの名無しさん:2014/01/18(土) 12:26:47.82
>>253
> 右辺値参照か左辺値参照かでなく
> &の数でハンガリアンとか、

>>252の例だと右辺値参照/左辺値参照の別と&の数は一致してるはず。

262 :デフォルトの名無しさん:2014/01/18(土) 12:36:53.94
>>255
> Tがint&の時r_xxxはint&だろ。

その時func1の上のバージョンは呼ばれないだろ

263 :デフォルトの名無しさん:2014/01/18(土) 12:57:51.87
ふむふむそんな糞な使い方が

264 :デフォルトの名無しさん:2014/01/18(土) 13:05:19.77
あのー
「右辺値参照と左辺値参照のプレフィクス使いますか?」なんて聞いてないし、使ってもないんだけど。
それがシステムハンガリアンにあたるのかアプリケーションハンガリアンなのか聞いてるんで。

265 :デフォルトの名無しさん:2014/01/18(土) 13:13:42.86
あまりに奇をてらったゴミレスだったので相手にされなかったことに気づかないらしい
しかも251が読めない文盲

266 :デフォルトの名無しさん:2014/01/18(土) 13:14:41.81
まあ、その、あれだ
キミの為だけにこのスレがあるわけでもないし、キミの為だけに書き込む義務も無いわけだ
書いてる人間が楽しけりゃいいんだよ
ぶっちゃけハンガリアン何てどうでもいい

267 :デフォルトの名無しさん:2014/01/18(土) 13:24:33.95
ハァ?
お前ら自分が無知のクセに開き直ってんじゃねーよ
何に使うかじゃやくてどっちに分類されるのか
>>241に答えられないだけだろ低膿共

268 :デフォルトの名無しさん:2014/01/18(土) 13:39:44.66
そんなことより変数名に日本語使おうぜ
int main() {
 const double 半径閾値_キロ = 3.0;
 double 半径_ヤード = g.getExtent();
 if ( 半径_ヤード * 0.91 > 半径閾値_キロ * 1000 )
  ;
}
変数名から必要な情報を察しやすくする目的なら
次元とか型だけじゃなく変数の意味がわかりやすい方がいい

269 :デフォルトの名無しさん:2014/01/18(土) 14:28:26.87
threadでjoinをタイムアウトさせたい
どうしたらいい?

270 :デフォルトの名無しさん:2014/01/18(土) 14:57:46.93
>>269
別スレッドで質問する

271 :デフォルトの名無しさん:2014/01/18(土) 15:18:27.14
>>268
> 次元とか型だけじゃなく変数の意味がわかりやすい方がいい
それをアプリケーションハンガリアンと呼ぶんだろ

ところでヤードとメートルの使いわけとか今だったらどうやるのがいいのかね?
std::ratioとか使うのかな?使ったことないけど。

272 :KUSO KOTE ◆unko./w.Osri :2014/01/18(土) 15:58:51.90
>>269
"join"の定義はさておき、自前の疑似joinでがんばります。
<サブスレッド側>
 処理の最後で
 ミューテックス ロック {
  完了フラグ←true
  条件変数をnotify_all
 }

<待つ側>
 ミューテックス ロック {
  完了フラグ==trueなら戻る
  条件変数でタイムアウト待ち
 }

 threadのデストラクト前に一度だけthread::joinを呼び出す。

273 :デフォルトの名無しさん:2014/01/18(土) 16:11:28.58
>>271
なんでもかんでもduration_castみたいなことは限界があるのでやめたほうがいい

274 :デフォルトの名無しさん:2014/01/18(土) 18:25:21.52
>>264
使う意味が無いものに対して考えても無駄だろ

275 :デフォルトの名無しさん:2014/01/18(土) 18:54:25.45
>>274
意味のあるなしを判断するのは、多分君には無理。
その言い方でわかってしまうよ。

276 :デフォルトの名無しさん:2014/01/18(土) 18:56:43.00
C++11よくわからんけど、
>>272のレスから察するとC++11のthreadってタイムアウト設定できないのか
なんか中途半端なthreadライブラリだな。

277 :デフォルトの名無しさん:2014/01/18(土) 18:58:37.42
どの言語だろうとスレッドのタイムアウトくらいテメーで実装できるだろボンクラ

278 :デフォルトの名無しさん:2014/01/18(土) 19:00:54.44
出た!コミュ障w

279 :デフォルトの名無しさん:2014/01/18(土) 19:05:21.20
普通、スレッド(各種ライブラリ)はテメーで実装するよな
ほんとC++はゆとり言語になっていくな

280 :デフォルトの名無しさん:2014/01/18(土) 19:27:23.13
std::thread::joinをスレッドの終了待ちに使えるのはごく限られた単純なケースだけだから
こんなのはPOSIXスレッドを使ったことがあれば常識

281 :デフォルトの名無しさん:2014/01/18(土) 19:31:14.12
C++はゆとり言語になんてなっていないのに勘違いしたゆとりが勝手に手を出してるだけ

282 :デフォルトの名無しさん:2014/01/19(日) 01:07:43.61
参入者を増やしたくないのか????

283 :デフォルトの名無しさん:2014/01/19(日) 02:27:35.74
>>280
そのPOSIXの仕様がどうしようもない糞だというのがわからないのか

284 :デフォルトの名無しさん:2014/01/19(日) 16:55:36.63
C++でコーディングするときはどんな音楽を聴いていますか?

285 :デフォルトの名無しさん:2014/01/19(日) 17:00:08.70
めうめうぺったんたん

286 :デフォルトの名無しさん:2014/01/19(日) 17:14:45.26
FMエアチェックしたものが多いな。
だからジャンルまちまち。
懐メロ、ジャズ、クラ、邦楽・・・

287 :デフォルトの名無しさん:2014/01/19(日) 17:32:23.45
end of all hope.

288 :デフォルトの名無しさん:2014/01/19(日) 17:45:32.63
クラシックとかスヌースジャズいいね。

289 :デフォルトの名無しさん:2014/01/19(日) 22:29:36.10
プリキュアの歴代エンディングをループ

290 :デフォルトの名無しさん:2014/01/19(日) 22:36:36.27
江添さんチーッス!

291 :デフォルトの名無しさん:2014/01/19(日) 22:58:52.45
YouTubeで「作業用」で検索して出てきたやつを適当に聴いてるわ。

292 :デフォルトの名無しさん:2014/01/19(日) 23:06:41.67
リアルタイムでNHK FM
セッション2014 -川村竜トリオ-

インクルードヘッダの見直し中

293 :デフォルトの名無しさん:2014/01/19(日) 23:18:20.39
unique_ptrを受け取ってメムバーにmoveする
関数を作りたいのですが
void set_resorse(unique_ptr<R> res);
void set_resorse(unique_ptr<R>&& res);
どちらの書き方がよいですか?

294 :デフォルトの名無しさん:2014/01/19(日) 23:27:01.25
「resorse」で始まる - 英和辞書の検索結果
検索結果は見つかりませんでした。
他の辞書での検索、検索ワードの変更を試して頂けますでしょうか。

候補キーワード
resource remorse resort resole recourse

295 :デフォルトの名無しさん:2014/01/19(日) 23:29:43.59
「メムバー」で始まる - 国語辞書の検索結果

検索結果は見つかりませんでした。
他の辞書での検索、検索ワードの変更を試して頂けますでしょうか。

296 :デフォルトの名無しさん:2014/01/19(日) 23:32:02.23
好きなゲームの戦闘音楽とかきくよ
テンション上がってコーディングがはかどる

297 :デフォルトの名無しさん:2014/01/19(日) 23:49:41.24
ショパンをぉ…
糞オタなのでアニソンループだよ悪いか。

298 :デフォルトの名無しさん:2014/01/19(日) 23:51:39.27
アニソン・・・・・・
ガッチャマンとかパーマンとかか・・・・・・・

299 :デフォルトの名無しさん:2014/01/20(月) 00:04:35.23
>>293
noexcept じゃないってことは失敗する可能性があるってことだとして、
前者だと失敗したときにオブジェクトが死んじゃうことが避けられなくて嫌な感じ。

300 :デフォルトの名無しさん:2014/01/20(月) 02:12:52.93
すべてのオブジェクトを司る不老不死のオブジェクトを作成すれば良い

301 :デフォルトの名無しさん:2014/01/20(月) 02:25:46.26
>>300
お、おまえ、神になる気か……!!

302 :デフォルトの名無しさん:2014/01/20(月) 02:32:05.23
>>301
これでも観て早く寝ろ。
明日、つーかもう今日か、今日は仕事だろ、さっさと寝ろ。
http://www.youtube.com/watch?v=INbco2MQ1dM

303 : ◆QZaw55cn4c :2014/01/20(月) 03:02:09.01
>>302
最近(?)はやりの重厚な設定や衝撃的かつ悲壮な展開,とかいうやつですか‥‥
::new[](std::nothrow) のオーバーロードに疲れました‥‥
サヨナラ‥‥

304 :デフォルトの名無しさん:2014/01/20(月) 03:19:22.09
どこが重厚なんだよwCG使って空中飛びながら戦うならこれくらいはやって欲しいw
ttp://www.youtube.com/watch?v=7C6sC-p8fa4

305 :デフォルトの名無しさん:2014/01/20(月) 12:06:45.96
>>304
タケコプターなしで自由に飛び回るその映像は何度見ても違和感を感じる。
もうジャンプ力とかそういうレベルの問題じゃないしな。
もうちょっとなんとかならなかったのかな。

306 :デフォルトの名無しさん:2014/01/20(月) 13:27:11.57
こんなにガンガン叩きつけるように切ってたりコンクリート切ったりしてたら
刃はボロボロだろうな

307 :デフォルトの名無しさん:2014/01/20(月) 13:31:33.13
空中で剣を叩き合うとか作用反作用の法則に反してるだろ
こいつらゴムの剣で戦ってんのか

308 :デフォルトの名無しさん:2014/01/20(月) 16:28:01.13
>>302
やっぱプリキュア可愛いな

309 :デフォルトの名無しさん:2014/01/20(月) 19:59:18.11
プリキュアのダンスは3Dで作ってモーションキャプチャで動き付けて。
トゥーンシェーディングかけてあるらしい。
ITの粋を結集してある。

310 :デフォルトの名無しさん:2014/01/20(月) 20:04:05.10
そうだなgdgd妖精は最高だな

311 :デフォルトの名無しさん:2014/01/20(月) 20:16:18.20
>>309
そういうのを可能にするシステムってやっぱC++とかで地道に作るものなの?

312 :デフォルトの名無しさん:2014/01/20(月) 20:18:45.51
あれ?俺の知ってるぷりきゅあとは違うぞ

313 :デフォルトの名無しさん:2014/01/20(月) 20:37:58.68
>>311
Maya使ってるんだとしたらC++とそれで作られた専用組み込み言語とPython

314 :デフォルトの名無しさん:2014/01/20(月) 22:16:01.61
>>312
お前の知ってるプリキュアはどれよ

315 :デフォルトの名無しさん:2014/01/20(月) 22:18:16.97
江○添さんがプリキュアでハァハァしてると聞いてやってきました。

316 :デフォルトの名無しさん:2014/01/20(月) 23:05:10.67
なんだかんだで、未就学児抱えてる男なら知ってるプリキュア
そっから上になると、アイカツとかポケモンが押さえてる

作業BGM?とりあえずキュアメタルループしとけば

317 :デフォルトの名無しさん:2014/01/20(月) 23:30:44.06
キュアソードが一番可愛い♪

318 :デフォルトの名無しさん:2014/01/20(月) 23:36:50.11
キュアソードがどれかわかんねーよ
キャラ数多すぎだろ
どっかに一覧ねーの?

319 :デフォルトの名無しさん:2014/01/21(火) 07:30:32.09
サーバ名は歴代プリキュアでキメようぜ

320 :デフォルトの名無しさん:2014/01/21(火) 13:23:38.79
僕はキュアドリーム

321 :デフォルトの名無しさん:2014/01/21(火) 14:14:43.18
だからわかんねーって
キュアドリームってどれよ
どっかに一覧ねーの?

322 :デフォルトの名無しさん:2014/01/21(火) 14:21:32.21
>>319
キュアを除けば(普通の人には)意外とバレにくい気もする
星座なんかより一般的な名称が多いし案外アリかもしれないな

323 :デフォルトの名無しさん:2014/01/21(火) 15:32:49.76
ここはプリキュアスレじゃねーんだぞ
http://ja.wikipedia.org/w/?search=%E3%82%AD%E3%83%A5%E3%82%A2%E3%83%89%E3%83%AA%E3%83%BC%E3%83%A0



俺はキュアフラワー!

324 :デフォルトの名無しさん:2014/01/21(火) 17:16:02.31
Wikipediaはそんなものまで載ってるのか。

325 :デフォルトの名無しさん:2014/01/21(火) 18:22:11.92
>>319
個人でそんなに鯖持たないだろw
俺でも物理鯖2台、そのうち1台ではバーチャル鯖4台の計6台だぞw

326 :デフォルトの名無しさん:2014/01/21(火) 18:28:58.52
>>325
なんかの通信テストでもしてんの?

327 :デフォルトの名無しさん:2014/01/21(火) 18:41:57.43
>>325
いまや個人で自宅に俺様クラウドを構築しているが多いだろ
プログラム作る奴なら数台の物理鯖で俺様クラウドや俺自作ソフトで分散処理している奴も多いだろ
アニオタマは複数台のPC・鯖でエンコシステム構築って多いだろ

328 :デフォルトの名無しさん:2014/01/21(火) 19:56:59.17
個人宅でパーツの寿命やら電気代やらに気を遣いながらサーバー構築するよりも、
Amazonでさくっとクラウド借りてシステム作った方が安上がりだしスケールアップ容易だし。

329 :デフォルトの名無しさん:2014/01/21(火) 20:49:26.32
レンタルサーバの方が責任押し付けられるしね
あと、個人に対するアタックはグレーで、企業に対するアタックは黒じゃなかったっけ?

330 :デフォルトの名無しさん:2014/01/21(火) 20:57:35.83
マルチコアのおかげで昨今分散処理するほどコンパイルに時間がかからぬ
PCは母艦とノート1台でお腹いっぱい

331 :デフォルトの名無しさん:2014/01/21(火) 21:53:41.47
>>326
趣味のMMORPG開発&運営と副業。

332 :デフォルトの名無しさん:2014/01/21(火) 22:03:18.61
>>331
なんだかよくわからないけど大変そうですね。
もちろん開発はC++主体ですよね?

333 :デフォルトの名無しさん:2014/01/21(火) 22:21:55.88
>>332
うんC++

大変とは思わないかな
好きでやってるわけだからなw

334 :デフォルトの名無しさん:2014/01/22(水) 03:18:26.26
>>305-307
スキルというファンタジー世界の物理法則が作動した結果
…ということにしておこうよ、可哀想だから。なんであっちに走ったんだろうなぁSE…

335 :デフォルトの名無しさん:2014/01/22(水) 10:21:10.64
struct hoge
{
typedef const int& value_type;
hoge(const value_type&){}
};
error: cannot declare reference to 'const int&'
eclipseだとエラーが出ます。vcだと出ません。何故ですか。

336 :デフォルトの名無しさん:2014/01/22(水) 10:23:14.53
それはVCが腐っているからです

337 :デフォルトの名無しさん:2014/01/22(水) 10:40:49.77
const constになっちゃうからじゃね

338 :デフォルトの名無しさん:2014/01/22(水) 11:02:17.19
>>335
お前の頭が腐ってるからだろうが
hogeキチガイは失せろ

339 :デフォルトの名無しさん:2014/01/22(水) 11:41:40.45
しばらくなりを潜めていたチョーセン人がまた暴れ出したな
死ねばいいのに

clang 3.5でもエラーなしでコンパイルできる

340 :KUSO KOTE ◆unko./w.Osri :2014/01/22(水) 12:08:31.38
参照の参照はできるはず
8.3.2p6
TR that is a reference to a type T, an attempt to create the type“lvalue reference to cv TR”creates the type “lvalue reference to T

341 :デフォルトの名無しさん:2014/01/22(水) 12:18:43.66
>>335=>>339はいつものキチガイhoge荒らし

342 :デフォルトの名無しさん:2014/01/22(水) 12:19:41.93
チョーセン人死ね死ね死ね死ね死ね死ね

343 :デフォルトの名無しさん:2014/01/22(水) 12:25:50.96
いつからeclipseはエラーメッセージを出すようになったんだ?

344 :デフォルトの名無しさん:2014/01/22(水) 12:27:42.21
hoge使いより知能が低いチョーセン

345 :デフォルトの名無しさん:2014/01/22(水) 12:32:49.56
>>335=>>339=>>342はいつものキチガイhoge荒らしQ

346 :デフォルトの名無しさん:2014/01/22(水) 12:33:57.46
>>344も、いつものhoge荒らしによるage攻撃

347 :デフォルトの名無しさん:2014/01/22(水) 12:53:52.38
糞は苦いからな

348 :デフォルトの名無しさん:2014/01/22(水) 14:10:44.94
荒らすなよ hoge使いより知能の低いチョーセン人

349 :デフォルトの名無しさん:2014/01/22(水) 14:12:10.72
「age攻撃」などという妄想をまき散らすなチョーセン人

350 :デフォルトの名無しさん:2014/01/22(水) 15:10:02.17
hoge本で学習すると>>335みたいな馬鹿が出来上がる。

351 :デフォルトの名無しさん:2014/01/22(水) 16:16:59.71
自分がチョーンジン妄想してることを棚にageたぞ
チョーンジンはageが好きなのかな

352 :デフォルトの名無しさん:2014/01/22(水) 17:45:36.33
>>335
知恵遅れはプログラミングするな

353 :デフォルトの名無しさん:2014/01/22(水) 17:46:29.26
バカよりも低脳のチョーセン人 死ね

354 :デフォルトの名無しさん:2014/01/22(水) 17:54:29.57
相変わらずage攻撃を続ける韓国人

355 :デフォルトの名無しさん:2014/01/22(水) 19:46:36.86
アンチhogeって平日の昼でも基地レスできるんだな
そんな奴だからアンチhoge基地になるだろうが

356 :デフォルトの名無しさん:2014/01/22(水) 20:09:03.82
一文目と二文目の関連が全くないうえに基地レスとか思い込みで書き込んでる辺り頭良さそう()

357 :デフォルトの名無しさん:2014/01/22(水) 20:13:28.41
「そんな奴だからアンチhoge基地になる」
  ↓
「平日の昼でも気のふれたレスできるから
アンチhogeのキチガイになるんだろうが」

論理性のかけらもない中傷以外の何物でもない。

358 :デフォルトの名無しさん:2014/01/22(水) 20:27:22.45
遺伝的に論理的な思考が不可能なチョーセン人が何を言ってるんだか…

359 :デフォルトの名無しさん:2014/01/22(水) 21:32:29.93
hage

360 :デフォルトの名無しさん:2014/01/22(水) 22:37:27.17
>>358
まともな精神を有さないからhogeって言葉で発狂するんだ

361 :デフォルトの名無しさん:2014/01/22(水) 23:35:22.19
個人的な思い込みに基づいて"hoge"の使用に過剰な反応をする人がこのスレに住み着いていて、
最近は「hoge禁止」がスレ住人の総意であるかのように見せる工作を繰り返しているようです。
あまり気にしないでやってください。

362 :デフォルトの名無しさん:2014/01/23(木) 00:00:51.15
>>361は荒らしBOTによる定期コピペ

363 :デフォルトの名無しさん:2014/01/23(木) 01:04:14.42
ha, hageてないわ!!!

364 :デフォルトの名無しさん:2014/01/23(木) 01:18:42.73
こういう論理積(和)の条件式を複数行にするときってさ
if (a == 1 && b == 2) {

↓どっちがメジャー?
if (a == 1 &&
  b == 2) {

if (a == 1
  && b == 2) {

365 :デフォルトの名無しさん:2014/01/23(木) 01:50:51.82
>>364
お好きにどうぞ。
あ、私は前者です。

366 :デフォルトの名無しさん:2014/01/23(木) 02:55:22.45
>>360
そもそもまともな精神を有していればhogeなんか使わない

367 :デフォルトの名無しさん:2014/01/23(木) 03:03:24.44
民族全体でマトモな精神を有していないチョーセン人

368 :デフォルトの名無しさん:2014/01/23(木) 10:08:55.89
ハゲ「おまえらそんなフサフサでマトモな言語設計できると思ってんのか

369 :デフォルトの名無しさん:2014/01/23(木) 11:38:11.78
こんな言語設計がマトモでたまるかハゲ!

370 :デフォルトの名無しさん:2014/01/23(木) 17:02:13.77
>>364
俺も前者がデフォ
後者でも拒否反応は起こさないが

371 :デフォルトの名無しさん:2014/01/23(木) 19:02:28.77
俺もグラボはゲフォ
ラデオンでも拒否反応は起こさないが

372 :デフォルトの名無しさん:2014/01/23(木) 22:06:43.07
>>364
どっちかって言うと後者
多分批判する奴多いだろうけど、各条件の頭をタブて揃えるために
if(
  a == 1
  && b == 2
) {
のように書いてる。

373 :デフォルトの名無しさん:2014/01/23(木) 22:13:51.80
それはやりすぎだろ

374 :デフォルトの名無しさん:2014/01/23(木) 22:19:03.55
前者は労害の教科書に洗脳された馬鹿か
行指向のプログラミング言語使用者。
後者は自分の頭で物事を考えられる人間。
複数の条件がANDで繋がっていることの
視認性を高めるなら後者は必然。

375 :デフォルトの名無しさん:2014/01/23(木) 22:23:15.70
>>374
まあいいんだけど、最終行だけ浮いてるね
それまでのご高説とさっぱりつながらないんだが

376 :デフォルトの名無しさん:2014/01/23(木) 22:43:24.56
>>364
どう考えても
if( [a,b] == [1,2] )
ってやりゃ済む事
これさえもできないC++とか、すべてにおいて負け犬のレッテル貼られてもおかしくないレベル

377 :デフォルトの名無しさん:2014/01/23(木) 22:48:34.75
ラムダ式とは何か憶えてからまたおいで

378 :デフォルトの名無しさん:2014/01/23(木) 23:04:59.52
>>376
アスペってホントにコミュニケーションができないのな。

379 :デフォルトの名無しさん:2014/01/23(木) 23:05:28.57
>>377
C++みたいなオブジェクト指向言語使ってる奴がラムダの何を知っているか逆に聞いてみたいレベル

静的言語で使ってるそれはクロージャ()って呼び方に統一してほしいな
全然ラムダの範囲に入ってこれていない言語なのだから

380 :デフォルトの名無しさん:2014/01/23(木) 23:10:54.66
条件1成立() && (a=makeA()) != nullptr && calcX(a) > 100
これを>>376の様にしたら不自然だろ。
それに>>376の様にしたらたいていは
要求仕様との対比が取りづらくなる。

381 :デフォルトの名無しさん:2014/01/23(木) 23:18:02.03
>>379
関数型いやクロージャ型の定数、それ以外何があると言うんだ?
俺ルールの「範囲」とやらは論外にも乗り遅れた妄想にすぎないんだが

382 :デフォルトの名無しさん:2014/01/23(木) 23:22:49.17
静的でない童貞言語って具体的になんだ?
ECMAScript?

383 :デフォルトの名無しさん:2014/01/23(木) 23:23:58.80
# ruby2.1.0

a = 1
b = 2
p [a,b] == [1,2] # true

>>381
ゴミ

384 :デフォルトの名無しさん:2014/01/23(木) 23:25:44.83
スクリプトに脳みそをやられたか

385 :デフォルトの名無しさん:2014/01/23(木) 23:27:59.77
こんなところに乗り込んできたって得るものなんかないから帰りな。
誰も困らないようなどうでもいいことを取り上げて叩くのはツボ外し過ぎだって。

386 :デフォルトの名無しさん:2014/01/23(木) 23:30:09.36
よくわからないけど
童貞の>>379がC++スレに乗り込んできて
性的脳のC++erと童貞脳とのコミュニケーションが
成立しなかったということ?

387 :デフォルトの名無しさん:2014/01/23(木) 23:31:22.73
>>386
アスペってホントにコミュニケーションができないのな。

388 :デフォルトの名無しさん:2014/01/23(木) 23:37:50.67
extern class HOGE;
って宣言したクラスって

HOGE *hoge = new HOGE;
ってできるんですか?

389 :デフォルトの名無しさん:2014/01/23(木) 23:41:10.31
>>388
2chに書き込むより自分でソースコード書いて試したほうが早いってレベルにさっさとなれ

390 :デフォルトの名無しさん:2014/01/24(金) 00:00:21.98
>>386
童貞の>>379がC++スレに乗り込んできたけど、
何が言いたいのかさっぱりわからなかった、ということ。

その原因は、本当に言いたいことを言う度胸がない、の一点。

391 :デフォルトの名無しさん:2014/01/24(金) 00:08:12.00
>>388は知りたいんじゃなくて荒らしたいだけなんだよ
アンチhogeを煽ってスレをカオスにするのが目的

392 :デフォルトの名無しさん:2014/01/24(金) 00:09:41.53
長くなった文の折り返しは、オレも後者だな。

条件に限らず1文を折り返すときは、行頭で継続がわかるようにしてる。
aaa.bbb->cccなら
aaa
.bbb
->ccc
みたいな感じ。

393 :デフォルトの名無しさん:2014/01/24(金) 00:14:29.64
>>388はいつものhoge基地害。
hoge禁止されたことに反抗して質問しているふりをしている。
これだけでも(ルールに従わないので)迷惑なのに
時々自分の初歩的な誤りを指摘されると
「オマエら馬鹿だなばーかばーか」と開き直るのが困りもの。

394 :デフォルトの名無しさん:2014/01/24(金) 00:19:13.79
俺も後者
行末だと凸凹して接続関係が分かり難い

395 :デフォルトの名無しさん:2014/01/24(金) 00:54:46.57
>>364
if (a == 1 && b == 2)
{

396 :デフォルトの名無しさん:2014/01/24(金) 01:50:58.87
そこまで長大な条件文になってくるともう分割するけどな。

if ( a == 1 ){
   if ( b == 2 ){

   }
}

397 :デフォルトの名無しさん:2014/01/24(金) 01:54:17.97
最初は
a == 1 &&
b == 2
こう書いてたけど
後から
c ==  とか足したくなった時に面倒だと気づいて
  a == 1
&& b == 2

こうなった

398 :デフォルトの名無しさん:2014/01/24(金) 02:06:13.77
>  a == 1
>&& b == 2
JavaScriptでハマる

399 :デフォルトの名無しさん:2014/01/24(金) 02:06:54.05
自分の場合長くなりすぎる場合はifの前段で
const bool ab_disable= (a==1 && b==2);
if(ab_disable && cd_enable)
って感じで分けるな
名前付けることによって何の条件なのかわかりやすくするためにも
if文自体を分けることは滅多にない

400 :デフォルトの名無しさん:2014/01/24(金) 02:19:31.65
>>399
cd_enable は どこで評価するの?w

401 :デフォルトの名無しさん:2014/01/24(金) 02:24:38.98
>>400
書いてる途中でめんどくさくなったから端折っただけだ。
それぐらい脳内補完してくれ

402 :デフォルトの名無しさん:2014/01/24(金) 02:31:33.29
>>401
てことは ab_disable が 偽であれば省略できる評価を常に行うの?w

403 :デフォルトの名無しさん:2014/01/24(金) 02:46:18.12
>>402
気にしないな。その程度

404 :デフォルトの名無しさん:2014/01/24(金) 02:58:09.64
前者はifの後の視認性が悪い感じがする
if (expr1() < 0 &&
  expr2() > 0) {
  func1();
}
if (expr1() < 0
  && expr2() > 0) {
  func1();
}

405 :デフォルトの名無しさん:2014/01/24(金) 03:16:16.26
>>398
普通に動くけど何かがjsにある?

406 :デフォルトの名無しさん:2014/01/24(金) 03:22:58.31
>>405
REPLじゃない?
;省略出来たりするから

407 :デフォルトの名無しさん:2014/01/24(金) 04:29:45.62
JavaScriptって書いてあるのが読めないのか
ダメだなこいつ
つかえねー

408 :デフォルトの名無しさん:2014/01/24(金) 04:39:35.97
>>407
ゴミか

409 :デフォルトの名無しさん:2014/01/24(金) 04:50:30.37
>>403
C++使いながら短絡評価を活用しない奴ってなんなん
そりゃやりすぎもいかんけどさ

410 :デフォルトの名無しさん:2014/01/24(金) 05:05:57.87
>>407
1, ECMA? おまえはJavaScriptではない!
2, ECMA? JavaScriptだ。しかし;省略出来るようなREPLはJavaScriptではない!
3, REPL? Perlの事か?JavaScriptではない!

1や2のケースならごめんなさい。
でも、どうも3である可能性が否めないんだよなw

411 :デフォルトの名無しさん:2014/01/24(金) 05:43:56.79
>>405
ifみたいに()でくくる場合はいいけど
代入やreturnなど()が不要な場合、行末で文が終了してしまう。
演算子で終わってれば次行に継続する

412 :デフォルトの名無しさん:2014/01/24(金) 06:01:26.85
;が省略できるなんて言語仕様として終わってるなJavaScript
数多のトラブルの元でしかない

413 :デフォルトの名無しさん:2014/01/24(金) 06:05:41.06
ブロック終端の直前のみ省略可能ならおk

414 :デフォルトの名無しさん:2014/01/24(金) 06:40:16.12
374 デフォルトの名無しさん sage 2014/01/23(木) 22:19:03.55
前者は (略)
行指向のプログラミング言語使用者。

415 :デフォルトの名無しさん:2014/01/24(金) 10:47:36.41
あー確かに自分のプログラムは前者で書いているなぁ。

416 :デフォルトの名無しさん:2014/01/24(金) 13:24:57.53
後者のように演算子が行頭にあった方がわかりやすい
特に3項演算子

417 :デフォルトの名無しさん:2014/01/26(日) 04:22:59.10
>>416

必殺技考えた

「おまんこ炎斬刺」

とかどう?

418 :デフォルトの名無しさん:2014/01/26(日) 09:09:18.70
散靠炎斬熾なら必殺技っぽい。

419 :デフォルトの名無しさん:2014/01/26(日) 09:25:51.77
散靠炎斬熾なら必殺技っぽい。

420 :デフォルトの名無しさん:2014/01/26(日) 13:27:10.77
コンパイラーさんからしてみたらブレース前の;とか
無用の長物すぎワロタ エラーメッセージとか出すの
超ダルイんですけどみたいな感じだろ

421 :デフォルトの名無しさん:2014/01/26(日) 21:19:31.47
>>420
ブロック終端の直前のみ省略可能ならそれでいいけど
実際はそうじゃなくても省略可能だったりするのがJavaScript

422 :デフォルトの名無しさん:2014/01/26(日) 22:22:42.50
からの〜?

423 :デフォルトの名無しさん:2014/01/26(日) 23:13:54.87
コンパイラーさんはむしろ、なんだろうこの「}」は?
もしかしてセンテンスの終わりか?
といちいち頭を使わなくてはならない。

「;」があれば、「}」が来て即「ここまでがブロックだな」と分かる。

424 :デフォルトの名無しさん:2014/01/27(月) 00:56:56.13
からの〜?

425 :デフォルトの名無しさん:2014/01/27(月) 01:32:14.34
422 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん
424 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

426 :デフォルトの名無しさん:2014/01/27(月) 01:51:48.49
425 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

427 :デフォルトの名無しさん:2014/01/27(月) 02:32:45.35
426 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

428 :デフォルトの名無しさん:2014/01/27(月) 02:41:17.90
420 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

429 :デフォルトの名無しさん:2014/01/27(月) 02:59:34.06
413 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

430 :デフォルトの名無しさん:2014/01/27(月) 06:48:27.40
なんだ?

431 :デフォルトの名無しさん:2014/01/27(月) 07:28:24.28
430 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

432 :デフォルトの名無しさん:2014/01/27(月) 09:31:43.57
朝鮮人uyが火病を起こしているのです

433 :デフォルトの名無しさん:2014/01/27(月) 11:12:22.64
配列初期化子の最後の , あたり、>>423 が言うようになってるね

434 :デフォルトの名無しさん:2014/01/27(月) 12:20:57.55
432 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん
433 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

435 :デフォルトの名無しさん:2014/01/27(月) 13:43:50.94

オウム返ししか出来ないクズ

436 :デフォルトの名無しさん:2014/01/27(月) 14:23:16.07
>>425
コピペ迷惑だよ

437 :デフォルトの名無しさん:2014/01/27(月) 14:49:40.38
435 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん
436 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

438 :デフォルトの名無しさん:2014/01/27(月) 15:33:03.31
hogeノイローゼが一段落したと思ったら
今度はなんだ?

439 :デフォルトの名無しさん:2014/01/27(月) 15:48:12.97
425はHOGEの次はからのに粘着し始めたのか。
一種のアスペじゃね。

440 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 16:39:53.93
http://katahiromz.web.fc2.com/win32/MZC_GC.zip

これ何で例外が発生するの???

441 :デフォルトの名無しさん:2014/01/27(月) 16:40:43.46
ZIPお断り

442 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 16:47:26.00
http://katahiromz.web.fc2.com/win32/MZC_GC.tgz

これ何で例外が発生するの???

443 :デフォルトの名無しさん:2014/01/27(月) 17:02:37.94
ちょっとおもろかったわ
ええ感じや

444 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 17:12:22.84
Visual Studio 2010でコンパイルして、「デバッグ」メニューの
「例外...」をクリックして、全部にチェックを入れて、「OK」ボタンを
クリック。「デバッグ開始」すると、例外が発生する。

何でだろ。。。

445 :デフォルトの名無しさん:2014/01/27(月) 17:26:35.06
we留守

446 :デフォルトの名無しさん:2014/01/27(月) 17:39:06.83
どれのことかわからんが
通常動作は初回例外を無視して同じ例外の2回目の発生をトラップする

だから気づかずに内部で例外を流してるのはよくある

447 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 18:50:40.40
>>446
詳しく

448 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 21:37:15.99
助けてくれよぉ〜〜

449 :デフォルトの名無しさん:2014/01/27(月) 23:12:58.62
普段無視してる例外だろうから無視する設定に戻せということ

具体的にどれかわかればまた違う原因かもしれん

450 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/27(月) 23:23:35.31
>>449
サンクス

451 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/28(火) 05:22:43.22
C++高速化
http://meme.biology.tohoku.ac.jp/students/iwasaki/cxx/speed.html

452 :デフォルトの名無しさん:2014/01/28(火) 06:33:31.62
>>451
ほとんど当たり前のことしか書いてないんだから、関数オブジェクトの方が普通の関数より早い理由をもっと掘り下げてくれよ。

453 :デフォルトの名無しさん:2014/01/28(火) 07:11:43.09
>>451
いまどきのコンパイラなら無駄な努力だろこれ

T x = a + b;

T x(a);
x += b;

454 :デフォルトの名無しさん:2014/01/28(火) 07:22:37.15
っていうかバイナリレベルの最適化が必要なら
インラインアセンブラの利用を検討した方が良いと思う

455 :デフォルトの名無しさん:2014/01/28(火) 07:29:42.81
>>453
gccとVCだと、そこにあるとおり string ではまだ有効みたいね
clangは試してない

456 :デフォルトの名無しさん:2014/01/28(火) 10:59:28.75
template<typename T> void hoge( T* t )
{
struct hage
{
static void hige(void* p)
{
T* t = static_cast< T* >(p);
}
};
hage::hige( t );
};
C++03でローカルクラス内部でT型を使う事は出来ますか

457 :デフォルトの名無しさん:2014/01/28(火) 11:54:20.37
よく知らないが03はテンプレートとローカルクラスの
相性が悪い気がする。

458 :デフォルトの名無しさん:2014/01/28(火) 14:01:02.17
>>456-457
>>1も読めない馬鹿はこなくていいから。

459 :デフォルトの名無しさん:2014/01/28(火) 16:11:16.91
精神病患者は来なくていいから

460 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/01/28(火) 16:17:42.74
アンパンマン、新しい顔ができたよ。

MZC3 C/C++ garbage collector library (MZC3_GC)
https://github.com/katahiromz/MZC3_GC

461 :デフォルトの名無しさん:2014/01/28(火) 16:35:37.24
精神疾患持ちの>>456がいるときいて

462 :デフォルトの名無しさん:2014/01/28(火) 17:13:28.76
uyが精神病というのははっきりしたな

463 :デフォルトの名無しさん:2014/01/28(火) 19:14:11.68
プリキュア好きのお前らはやっぱりこういうの買うの?

『ドキドキ!プリキュア』 プリキュア4人のロング枕&枕カバーが登場!
ttp://purisoku.com/archives/6551786.html

464 :457:2014/01/28(火) 19:41:10.03
>>458
申し訳ありません。
つい猿のように反応してしまいました。
以後気をつけます。

465 :デフォルトの名無しさん:2014/01/28(火) 20:27:42.83
枕はプリキュアじゃないけど壁紙はプリキュアだよ

466 :デフォルトの名無しさん:2014/01/28(火) 21:50:06.59
C++11ではconstメンバ関数はスレッドセーフにせよってことになったらしいけど、
参照メンバやポインタメンバがあると、mutableじゃなくてもconstメンバ関数経由で
実質的に状態が変わっちゃうよね。

467 :デフォルトの名無しさん:2014/01/28(火) 22:02:25.90
参照やポインタそのものは変わってないからな。そいつが指す先なんて知ったこっちゃない
ポインタの指す先をそのオブジェクトが所有していないケースも多々あるし

468 :デフォルトの名無しさん:2014/01/28(火) 22:11:35.61
状態が変わる以上(自動的には)スレッドセーフにはならないよね。
参照キャプチャしたラムダ式だってそうなってるんだし、
constメンバ関数内でmutex使う義務なんて課されても困る。

469 :デフォルトの名無しさん:2014/01/28(火) 22:13:36.41
>constメンバ関数はスレッドセーフ
これはstdに入ってる奴だけでしょ

470 :デフォルトの名無しさん:2014/01/28(火) 22:18:38.95
まったくその辺知らんがvectorやなんかのconstも内部でクリティカルセクションもつってこと?
いやや、そんなvector使いたくない…。io系だけかな

471 :デフォルトの名無しさん:2014/01/28(火) 22:22:46.69
std::vector<int> v;
void thread1() { v.size(); }
void thread2() { v.empty(); }
これらの呼び出しは安全ですよってだけだよ
一つでも内部状態を変更するスレッドがあればスレッドセーフではなくなるけど

472 :デフォルトの名無しさん:2014/01/28(火) 22:24:19.68
マルチコア使っててわけのわからんバグが出るようなのは避けたい

473 :デフォルトの名無しさん:2014/01/28(火) 22:24:51.91
ユーザ定義クラスを設計・実装する場合にも、C++11標準ライブラリと同じ
スレッド安全性レベルを保証すべきである。
この保証レベルを実現するために、クラス内部実装では「mutable修飾された
mutexメンバ変数」を利用した同期処理が必要になる。

http://d.hatena.ne.jp/yohhoy/20130803/p1

474 :デフォルトの名無しさん:2014/01/28(火) 22:48:47.78
ラムダとかbindとかファンクタ系のやつは複数スレッドで同一オブジェクトを使わずコピーしろ、でOK。
必要ならmutableも使いなはれ。

475 :デフォルトの名無しさん:2014/01/28(火) 23:05:22.95
C++に限らず、インタプリタ含む古参言語は軒並みマルチスレッドに悪戦苦闘していて面白い

476 :デフォルトの名無しさん:2014/01/28(火) 23:31:06.02
>>473
ライブラリの修正たいへんだな

477 :デフォルトの名無しさん:2014/01/29(水) 00:34:05.47
>>471
>呼び出しは安全
>内部状態を変更するスレッドがあればスレッドセーフではなくなるけど

よくわからんが、サイズがvolatileで管理されてんのか?
メモリバリアしてマルチコア対応しても、
コンパイラが生成するコードが実メモリに書き出すコード
になっていることを保証しないと意味が無いのだが。

478 :デフォルトの名無しさん:2014/01/29(水) 00:41:29.41
volatileじゃないと困る場面が分からん

479 :デフォルトの名無しさん:2014/01/30(木) 06:16:03.96
>>466
スレッドセーフとか,言語側で保証することじゃないとどーしても思うが…

480 :デフォルトの名無しさん:2014/01/30(木) 08:02:43.43
volatileが使い物になった試しはないな
結局OSのシステムコールになる

481 :デフォルトの名無しさん:2014/01/30(木) 08:27:21.63
メモリマップされたハードウェアレジスタ読む時

482 :デフォルトの名無しさん:2014/01/30(木) 17:54:32.43
からの〜?

483 :デフォルトの名無しさん:2014/01/30(木) 19:29:50.22
482 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

484 :デフォルトの名無しさん:2014/01/30(木) 19:42:32.72
また自演荒らしが始まったか

485 :デフォルトの名無しさん:2014/01/30(木) 23:02:16.54
からの〜?

486 :デフォルトの名無しさん:2014/01/31(金) 01:06:16.21
NGワード推奨: [あぼ〜ん]

487 :デフォルトの名無しさん:2014/01/31(金) 01:35:46.16
からの〜?

488 :デフォルトの名無しさん:2014/01/31(金) 20:08:16.38
きょうかい

489 :デフォルトの名無しさん:2014/01/31(金) 20:15:18.64
労害ジジイだけでも迷惑なのに
アニヲタとかマジやばい

490 :デフォルトの名無しさん:2014/01/31(金) 21:52:08.66
これはコロコロかわるから、最適化すんなよ。って強い意志。 > volatile

491 :デフォルトの名無しさん:2014/01/31(金) 22:02:06.44
newメモリ以外のリソースをライーしたいのですが
ラッパーを作うかunique_ptrを使うか、どちらがよいでしょうか?
unique_ptrだとリソースがポインタ型じゃないと使えないですよね?
unique_ptr<unko, function<void(unko*)>>
res(open_unko(), [=](unko* p){close_unko(p, sub_data)});

492 :デフォルトの名無しさん:2014/01/31(金) 22:39:02.95
プリキュア好きはアニヲタではない。

493 :デフォルトの名無しさん:2014/01/31(金) 23:07:14.17
DJができるラッパー希望

チェキラ

494 :デフォルトの名無しさん:2014/01/31(金) 23:54:40.91
>>491
struct HANDLE_deleter
{
typedef HANDLE_deleter pointer;
void operator () (HANDLE handle) {
::CloseHandle(handle);
}
};

typedef std::unique_ptr<HANDLE, HANDLE_deleter> Handle;
こんな感じで使ってる

495 :デフォルトの名無しさん:2014/02/01(土) 00:05:03.90
>unique_ptr<HANDLE, HANDLE_deleter>

unique_ptr<VOID, HANDLE_deleter>
じゃないの?

496 :デフォルトの名無しさん:2014/02/01(土) 00:09:58.27
間違えてた
×typedef HANDLE_deleter pointer;
○typedef HANDLE pointer;
こうすれば
unique_ptr<HANDLE, HANDLE_deleter>で大丈夫

497 :デフォルトの名無しさん:2014/02/01(土) 00:22:55.72
ポインタではないものにunique_ptrという名前を使うことの是非の話ではないのか

498 :デフォルトの名無しさん:2014/02/01(土) 00:24:34.21
>>495
ポンタはずしは
std::unique_ptr<std::remove_pointer<HANDLE>::type,HANDLE_deleter>

499 :デフォルトの名無しさん:2014/02/01(土) 00:26:40.19
日本語が読めない残念な>>498

500 :デフォルトの名無しさん:2014/02/01(土) 07:58:28.66
そこまでしてHANDLEというvoid*を抽象化した型に
unique_ptrとかremove_pointerを使いたいか?
ラッパでいいんじゃね

501 :デフォルトの名無しさん:2014/02/01(土) 08:04:09.68
ラッパって要するに自作のスマポでしょ?
そんなの作るより既にあるものを使った方がいいだろう

502 :デフォルトの名無しさん:2014/02/01(土) 08:05:40.02
機能的に条件を満たしていても名前が中身とあっていない糞な部品は使うべきではないね

503 :デフォルトの名無しさん:2014/02/01(土) 08:08:59.96
名前なんてそれこそtypedefでいいだろ

504 :デフォルトの名無しさん:2014/02/01(土) 08:24:15.02
unkoのデリーターって
ようはunko delでしょ?

505 :デフォルトの名無しさん:2014/02/01(土) 08:56:44.78
おまいらのスマポのノウハウおせーて
扱いむずかぴー

506 :デフォルトの名無しさん:2014/02/01(土) 09:58:45.86
便乗だがunique_ptrのクローンてどうやって作る?
てかなんでcloneメソッドがないんだっけ?

507 :デフォルトの名無しさん:2014/02/01(土) 10:00:46.30
クローンなんて作ったらuniqueじゃなくなるじゃん

508 :デフォルトの名無しさん:2014/02/01(土) 10:09:00.29
いや資源を共有するわけじゃなく、こういうp2を作りたいだけ。
std::unique_ptr<T> p1(new T);
std::unique_ptr<T> p2(new T(*p1));

509 :デフォルトの名無しさん:2014/02/01(土) 10:09:44.09
それでいいじゃん

510 :デフォルトの名無しさん:2014/02/01(土) 10:13:52.74
std::unique_ptr<T> p2(p1.clone());
と書けちゃまずい理由でもあるの?

511 :デフォルトの名無しさん:2014/02/01(土) 10:17:28.06
バイナリが増える

512 :デフォルトの名無しさん:2014/02/01(土) 10:23:20.50
std::unique_ptr<T> p2(p1.get());
でも、
std::unique_ptr<T> p2(p1.release());
でも、
std::unique_ptr<T> p2(static_cast<std::unique_ptr<T>>(p1))
でもダメだな。

>>511どういう意味?
単にstd::unique_ptr<T>のprvalueを返すだけなのに。

513 :デフォルトの名無しさん:2014/02/01(土) 10:52:40.26
deleterがカスタマイズできる以上勝手にポインタを参照して
クローンを作ろうとするのはダメだろ。
ポインタがnewで作成されているとも限らないし、global new かオーバーロードされたnewかどうかもわからない。

514 :デフォルトの名無しさん:2014/02/01(土) 10:54:52.00
だからメソッドとして必要だって話じゃね?

515 :デフォルトの名無しさん:2014/02/01(土) 10:57:56.70
>>514
だから標準のメソッドとして作るのは難しい。
上みたいにHANDLE型を入れて使ってるやつもいる。

516 :デフォルトの名無しさん:2014/02/01(土) 11:14:58.57
じゃあ>>508も一般にはダメだな。

517 :デフォルトの名無しさん:2014/02/01(土) 11:17:44.26
cloneなんてメンバ関数なくて正解ということで

518 :デフォルトの名無しさん:2014/02/01(土) 11:39:23.18
なくていいというか入れるのが難しいって意味か。
deleterがallocatorを兼ねてればできたのかな。

519 :デフォルトの名無しさん:2014/02/01(土) 11:40:53.97
そもそも意味論的にcloneは変だけど、ファイル間の依存関係をなくしたいから
pimpl的に使いたいことは多々あるんだよね。標準でpimpl入れてほしい。

520 :デフォルトの名無しさん:2014/02/01(土) 12:00:36.13
そもそもunique_ptrをメンバに持つクラスのコピコンはどうするのが普通?

521 :デフォルトの名無しさん:2014/02/01(土) 12:05:42.54
何も書かないな
だからコピーできないわ

522 :デフォルトの名無しさん:2014/02/01(土) 14:29:32.81
>>504
不覚にも吹いた

523 :デフォルトの名無しさん:2014/02/01(土) 15:46:22.25
>>520
uniqueだから、コピーはだめじゃないのか。moveコンでよろしくじゃない?

524 :デフォルトの名無しさん:2014/02/01(土) 16:26:37.25
unique_ptrはコピーできない。汎用的なクローンも実装できない。
shared_ptrは占有できない
自前の資源を自分でdeleteとかするのはやめてスマートポインタに任せましょう、って言われてもな。

525 :デフォルトの名無しさん:2014/02/01(土) 17:59:09.72
設計が糞なのを見直せ

526 :デフォルトの名無しさん:2014/02/01(土) 18:21:02.23
>>525
占有の資源を持ち、コピーが必要
OOPクラスではなく、値のセマンティックスをもつ

それが糞な設計だというのか?

527 :デフォルトの名無しさん:2014/02/01(土) 18:25:55.43
>>526
多分>>525は、
>OOPクラスではなく、値のセマンティックスをもつ
これで設計が糞とか条件反射で言っちゃうオブジェクト脳

528 :デフォルトの名無しさん:2014/02/01(土) 18:45:33.98
〇〇脳とレッテルを貼ったところでお前の知能の低さは改善されない

529 :デフォルトの名無しさん:2014/02/01(土) 19:09:31.64
底辺職は知能の低いやつがつくもので
改善したら底辺職卒業するよね

530 :デフォルトの名無しさん:2014/02/01(土) 19:27:35.77
俺より下の奴はみな底辺




したがって俺は底辺よりほんの少し上

531 :デフォルトの名無しさん:2014/02/01(土) 20:10:32.90
>>528
そこまで言うなら具体的にどうぞ。

クラス B はT型のオブジェクトをひとつヒープ上に所有する
Tはコピー可能な型
クラス B は所有権の解放を自力でやるのは避けたい

ここでクラス B にコピーコンストラクタを実装するにあたり、あなたのおっしゃる正しい設計とは?

532 :デフォルトの名無しさん:2014/02/01(土) 22:32:52.89
>>528
早く答えろよ低能

533 :デフォルトの名無しさん:2014/02/01(土) 22:44:46.16
ここはhogeの出番だな

534 :デフォルトの名無しさん:2014/02/01(土) 23:13:12.96
hogeなら何でも反応してるわけじゃないみたいだな。

単にレス中にhogeがある ⇒ 放置
hogeを識別子として使用する ⇒ 火病

535 :デフォルトの名無しさん:2014/02/01(土) 23:39:00.93
static unique_ptr<hoge, function<void(hoge*)>>
hoge_res(open_hoge(), [=](hoge* p){close_hoge(p, sub_data)});
>>534、さー、どうなるか楽しみ

536 :デフォルトの名無しさん:2014/02/01(土) 23:44:58.50
またキチガイがすれを荒らしてんの?

537 :デフォルトの名無しさん:2014/02/01(土) 23:49:59.49
キチガイが現れたぞー逃げろー

538 :デフォルトの名無しさん:2014/02/01(土) 23:52:45.52
じゃあstdにhogeが入ったら・・・!

539 :デフォルトの名無しさん:2014/02/02(日) 00:16:03.94
std::enable_hoge
std::remove_hoge
std::is_hoge
std::hoge_type
std:::hoge_constant

540 :デフォルトの名無しさん:2014/02/02(日) 00:19:26.07
>>528
早く答えろよ低能

541 :デフォルトの名無しさん:2014/02/02(日) 00:23:12.75
>>539
SFINAEで使えそうだな
typename enable_hoge<is_same<T, hoge>::value>::type* =0

542 :デフォルトの名無しさん:2014/02/02(日) 00:34:57.48
>>540
粘着命のアンチhogeとなんか精神似ているんじゃないか

543 :デフォルトの名無しさん:2014/02/02(日) 01:03:43.59
unique_ptrはauto_ptrの改良型だからな
所有権が移転する
でもコンテナに入れられる要件を満たしている
cloneなんかしたらカウンタが必要になるからshared_ptrとかじゃないと対応しない

544 :デフォルトの名無しさん:2014/02/02(日) 01:09:45.75
>>543
cloneてのは>>508の意味だからカウンタなんて必要ない

545 :デフォルトの名無しさん:2014/02/02(日) 01:23:23.94
>>543
shared_ptrは資源の共有だから占有できないよ

546 :デフォルトの名無しさん:2014/02/02(日) 02:06:25.89
ハンドルみたいなのは値型としてふるまうようにラップして、
その上で生成タイミングを多少コントロールしたいならboost::optionalに突っ込むのが楽かな。

547 :デフォルトの名無しさん:2014/02/02(日) 13:59:26.03
new T(*p1)とp1.clone()を等価に働くようなメソッドcloneを定義するべきだと言っているんですよね?

例えばnewに限定すれば、

template <class T>
class UP : public std::unique_ptr<T> {
public:
  UP(T* t) : std::unique_ptr<T>(t) { }

  T* clone() {
    return new T(this->operator*());
  }
};

とできるが、std::unique_ptr自体をcloneしていないから名前が悪い。
cloneが意図した以外の場所で使われると(newしてるから)まずい。
よって必要ないし、あってはいけないメンバ関数だと思います。

548 :デフォルトの名無しさん:2014/02/02(日) 15:52:35.11
名前はmake_unique_copyあたりにしとけば問題ないだろう。
必要無いというのには同意だけど。

549 :デフォルトの名無しさん:2014/02/02(日) 16:36:58.51
からの〜?

550 :デフォルトの名無しさん:2014/02/02(日) 16:43:30.18
hoge_unique_copy

551 :重要:2014/02/02(日) 17:26:01.03
【重要】
hogeの使用は荒らし行為として禁止されています。
使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
>>1を読んで下さい

552 :デフォルトの名無しさん:2014/02/02(日) 17:33:10.45
チョーセン人がhoge禁止と慰安婦像をたてていますが、無視してください
hogeは禁止されてません

553 :デフォルトの名無しさん:2014/02/02(日) 17:41:03.31
hogeが禁止されてないとかw
韓国人は本当に息をするように嘘をつくなあw

554 :デフォルトの名無しさん:2014/02/02(日) 17:59:13.97
>>547
名前は別として T*を返すのは変だろ

template <class T>
class UP : public std::unique_ptr<T> {
public:
  UP(T* t) : std::unique_ptr<T>(t) { }
  UP(UP<T>&& t) : std::unique_ptr<T>(std::forward<UP<T>>(t)) { }
  UP<T> clone() {
    return UP<T>(new T(this->operator*()));
  }
};

として、こうやりたいんじゃない?
 ↓
UP<int> up1(new int(1));
UP<int> up2(up1.clone());
*up2 = 100;

555 :デフォルトの名無しさん:2014/02/02(日) 18:13:21.12
・hogeを使うと火病るチョーセン人が現れた
・チョーセン人はhogeが使われるたびにスレを荒らした
・チョーセン人はスレが荒れる事を口実にhoge禁止というルールを自演で作った
・チョーセン人が独断でテンプレにhoge禁止を入れたスレを立てた
・チョーセン人に反発する人がテンプレでhogeを禁止しないというスレを立てた
・チョーセン人はhogeコピペでスレをつぶした
・チョーセン人に反発する人がテンプレではhogeに触れていないスレを立てた
・チョーセン人はhogeが出てくるたびに口汚く罵り続けた
・チョーセン人が独断でテンプレにhoge禁止と書いたスレを立てた ← 今ここ

556 :デフォルトの名無しさん:2014/02/02(日) 18:15:28.38
>>548
必要ない、という主張はわかったけど、
>>531に対するあなたの答えは何?

557 :デフォルトの名無しさん:2014/02/02(日) 18:16:05.26
この迷惑な人まだいたのか・・・・

558 :デフォルトの名無しさん:2014/02/02(日) 18:19:42.97
チョーセン人は人ではない
「チョーセン人」と言う生き物

559 :デフォルトの名無しさん:2014/02/02(日) 18:29:14.27
>>556
別に。
newしてもう一つのunique_ptrに突っ込めばいいんじゃない?

560 :デフォルトの名無しさん:2014/02/02(日) 19:13:20.42
>>556

>>531の場合はnewに限定なんだから問題ないだろ?
手動でnew/deleteを書くのがいやだって言うならcloneでもなんでも作りゃいい。

ってここまで書いて思ったんだが、あんたは単に「make_uniqueが欲しい」って
言ってるだけなんじゃない?VCだったらあるみたいだよ。

561 :デフォルトの名無しさん:2014/02/02(日) 19:33:11.58
>>560
俺,>>556じゃないけど
>>531はnewに限定じゃないと思ったが
ついでに、unique_ptr使用が必須ってことではないだろう。

562 :デフォルトの名無しさん:2014/02/02(日) 21:40:12.58
【重要】
慰安婦像の建築は荒らし行為として禁止されています。
万が一慰安婦像が建てられても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。

563 :デフォルトの名無しさん:2014/02/02(日) 21:46:22.96
・慰安婦像を建てると火病る日本人が現れたニダ
・チョッパリは慰安婦像が建てられるたびにスレを荒らしたニダ
・チョッパリはスレが荒れる事を口実に慰安婦像禁止というルールを自演で作ったニダ
・チョッパリが独断でテンプレに慰安婦像禁止を入れたスレを立てたニダ
・日本に反発する人がテンプレで慰安婦像を禁止しないというスレを立てたニダ
・チョッパリは慰安婦像でスレをつぶしたニダ
・日本に反発する人がテンプレでは慰安婦像に触れていないスレを立てたニダ
・日本人は慰安婦像が出てくるたびに口汚く罵り続けたニダ
・チョッパリが独断でテンプレに慰安婦像禁止と書いたスレを立てたニダ ← 今ここ

564 :デフォルトの名無しさん:2014/02/02(日) 21:56:30.76
>>560
make_uniqueはC++14ドラフト入りが決まった提案
http://isocpp.org/files/papers/N3656.txt

make_sharedのunique_ptr版だ。これにより、new式を書かずにすむ。
あって当然の機能だ。これがない現行のC++11の標準ライブラリはクソである。
http://cpplover.blogspot.jp/2013/04/bristolc14.html

565 :デフォルトの名無しさん:2014/02/02(日) 22:26:00.20
>>560,564
なんだよそういう事かい。
俺は欠けたピースを求めていたのか・・・

std::unique_ptr<int> p1 = std::make_unique<int>(999);
std::unique_ptr<int> p2(std::make_unique<int>(*p1));
VCでやってみたら確かにできた。
こだわっていたp2構築時のnew排除だけじゃなく全部なくて済ませられるんだな。

566 :デフォルトの名無しさん:2014/02/02(日) 23:10:35.46
慰安婦と朝鮮人とかどこから出てきたんだよ
政治ネタは他所でやれ

567 :デフォルトの名無しさん:2014/02/02(日) 23:12:20.09
なんでいちいち餌やりに出てくるんだよ...

568 :デフォルトの名無しさん:2014/02/02(日) 23:26:15.77
>>566
hogeスレは朝鮮スレ。知らないの?

569 :デフォルトの名無しさん:2014/02/02(日) 23:35:56.13
>make_uniqueはC++14ドラフト入りが決まった

>>564はいつの時代からタイムワープしてきたのか

570 :デフォルトの名無しさん:2014/02/02(日) 23:46:24.11
template<typename... types>
void add(types&&... なんでいちいち餌やりに出てくるんだよ) {
 this->data.emplace_back(
  forward<types>(なんでいちいち餌やりに出てくるんだよ)...
 );
}

571 :デフォルトの名無しさん:2014/02/03(月) 00:02:05.37
>>569
何が言いたいのかよくわからんが、もっと過去形で書けばよかったのか?

572 :デフォルトの名無しさん:2014/02/03(月) 00:50:34.02
571 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

573 :デフォルトの名無しさん:2014/02/03(月) 00:57:04.50
>>571
さすがC++er、低脳書き込みをあぼ〜んするプラグイン作ったのですか

574 :デフォルトの名無しさん:2014/02/03(月) 01:02:30.48
低脳書き込みとは

575 :デフォルトの名無しさん:2014/02/03(月) 01:55:26.74
573 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

576 :デフォルトの名無しさん:2014/02/03(月) 02:36:48.04
あぼ〜んの報告など投稿しなくていいからな

577 :デフォルトの名無しさん:2014/02/03(月) 03:03:20.38
Cのほうにも書き込みましたが、教えてほしいことがあります!

578 :デフォルトの名無しさん:2014/02/03(月) 03:04:21.91
Cのほうにも書き込みましたが、教えてほしいことがあります!

579 :デフォルトの名無しさん:2014/02/03(月) 03:15:29.02
マルチの上に連投

580 :デフォルトの名無しさん:2014/02/03(月) 05:31:58.57
からの〜?

581 :デフォルトの名無しさん:2014/02/03(月) 11:28:09.98
580 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

582 :デフォルトの名無しさん:2014/02/03(月) 15:01:45.61
からの〜?

583 :デフォルトの名無しさん:2014/02/03(月) 17:35:06.12
576 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

584 :デフォルトの名無しさん:2014/02/03(月) 17:38:47.12
NGワード推奨: [あぼ〜ん]

585 :デフォルトの名無しさん:2014/02/03(月) 18:47:55.87
か ら の 〜 ?

586 :辛野:2014/02/03(月) 20:08:04.78
辛野ですが、何か用ですか?

587 :デフォルトの名無しさん:2014/02/03(月) 22:07:49.02
>>565
make_unique、VCで使っていたが標準じゃなかったのか。
ideonで試してみたらエラーになった。気にしないけど。

588 :デフォルトの名無しさん:2014/02/03(月) 22:09:39.45
587 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

589 :デフォルトの名無しさん:2014/02/03(月) 22:15:25.18
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

590 :デフォルトの名無しさん:2014/02/03(月) 22:24:41.23
>>571
ドラフト入りは既にしてるんでは

591 :デフォルトの名無しさん:2014/02/03(月) 22:33:14.16
>>590

>>564でリンクした http://cpplover.blogspot.jp/2013/04/bristolc14.htm
の1行目をパクッて書いただけだが、それがなんかおかしいことでもあるのか?

592 :デフォルトの名無しさん:2014/02/03(月) 22:33:44.39
ideon
イデオン

593 :デフォルトの名無しさん:2014/02/03(月) 22:45:24.03
ああ伝説の巨人ね

594 :デフォルトの名無しさん:2014/02/03(月) 23:02:07.76
建設巨人イエオン

595 :デフォルトの名無しさん:2014/02/04(火) 00:14:10.00
暗い嵐の夜だった

596 :デフォルトの名無しさん:2014/02/04(火) 01:05:31.37
か ら の 〜 ?

597 :デフォルトの名無しさん:2014/02/04(火) 01:24:17.26
クラスのメンバにコンテナを置いたとき,そのクラスのデストラクタでは,そのコンテナを delete しなくちゃならないんでしょうか?
自前でなんちゃってコンテナを書くなら,自分ならそうせざるを得ないのですが.

598 :デフォルトの名無しさん:2014/02/04(火) 01:58:43.68
597 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

599 :デフォルトの名無しさん:2014/02/04(火) 02:02:28.57
>>597
コンテナをnewで確保したのならdeleteする必要がある。
メンバ変数として確保したのなら必要ない。

600 :デフォルトの名無しさん:2014/02/04(火) 02:17:13.62
大きな釣り針

601 :デフォルトの名無しさん:2014/02/04(火) 02:30:51.04
あぼーんとかからのー?で荒らしてるのって
どうせ慰安婦とかチョーンジンとか投稿して荒らしてた奴なんだろうな

602 :デフォルトの名無しさん:2014/02/04(火) 06:17:57.65
同一人物かどうかは知らんが同じくらい迷惑。

603 :デフォルトの名無しさん:2014/02/04(火) 06:33:36.55
>>597
deleteだろ?冷静に考えるんだ。
myContainer* pC; というメンバがあるとき delete pC; と書くのに違和感があるか。
myContainer cont; というメンバがあるとき delete &cont; と書くのに違和感があるか。

後者に違和感を覚えないんだったら自作コンテナを書いている場合ではない。
コンテナの中身をdelete する話だとしても同様だ。

604 :デフォルトの名無しさん:2014/02/04(火) 07:13:36.60
10年もやってるのか
ttp://www.youtube.com/watch?v=R4waEPAWmkA

605 :デフォルトの名無しさん:2014/02/04(火) 14:51:03.95
>>604
味方がそんなにたくさんいたらカオスだろうな

606 :デフォルトの名無しさん:2014/02/05(水) 02:45:21.70
「ともだち」をテーマにして未来が何とかって言われるとあの映画を思い出すな

607 :デフォルトの名無しさん:2014/02/05(水) 07:55:57.23
開発環境を変えたいんだけどなんかおすすめない?

現在は
・Borland C++ compiler 5.5
・BCC Developer
でコードを書いてる。

どうもコンパイラーが更新されてないしコンパイルした速度も比較的遅いほうみたいなんで、できれば変えたい。
あんまり遅くない統合開発環境でなんかおすすめありますか?

608 :デフォルトの名無しさん:2014/02/05(水) 08:16:34.69
vs

609 :デフォルトの名無しさん:2014/02/05(水) 08:46:55.60
>>607
visual studio でええんでないかい?

610 :デフォルトの名無しさん:2014/02/05(水) 09:50:56.25
>>608
>>609

やっぱりVisual Studio推しの方が多いんですかね
昔Visual C++ Expressの2005とか2008を入れたことがあったんですけど、重すぎて結局使わなかったことがあるんですよ。
今2012とか2013とかがありますけど、使い勝手とかどんな感じですか。

611 :デフォルトの名無しさん:2014/02/05(水) 10:08:31.16
昔のと比べるとそんなに変わってないが、PCの性能が向上したから無問題

612 :デフォルトの名無しさん:2014/02/05(水) 10:14:49.88
Windows上で動かすアプリケーションなら何も考えずにVisual Studioでいいと思うけどねー

613 :デフォルトの名無しさん:2014/02/05(水) 10:25:51.01
Mingwで良いんじゃね?

614 :デフォルトの名無しさん:2014/02/05(水) 10:45:06.80
64bitとかWin8をやりたいのでなければそのままBCCにしとけばええ
最新wwwとか言っても使いづらくなるだけ

615 :デフォルトの名無しさん:2014/02/05(水) 10:47:05.55
MinGWはいいけどBCCのままは有り得ないわ

616 :デフォルトの名無しさん:2014/02/05(水) 11:00:59.01
まあBCCはないな
コーディングする人間が古い環境にしがみついて離れられないってのはちょっと終わってる

617 :デフォルトの名無しさん:2014/02/05(水) 11:04:07.13
ありがとうございます。

>>611
>>612
じゃあとりあえずVisual C++を入れてみます。
Visual Basic でも十分な程度のものを作るときもあるので、PC性能で重さが解決するならありがたいですね。

>>613
>>615

MinGWってコンソールアプリでしたよね。
Fortranをコンパイルすることもあるので、MinGWとかGCCも選択肢としてはアリかなと思ってるんですけど、統合開発環境にするのはなんか別のプログラムを用意しないとだめですよね。
その場合のおすすめってなんかありますか?

>>616
僕もそう思ったんで今相談してるんですよ。

618 :デフォルトの名無しさん:2014/02/05(水) 11:05:43.48
なぜいまさらVB・・・

619 :デフォルトの名無しさん:2014/02/05(水) 11:12:02.16
>>618
フリーパラメータが多い割に簡単なデータ処理しかしないプログラムを書くのが楽だと聞いたので。
その人が使ってたのはVB6なんですけどね。

バッチとCを組み合わせてもいいんですけど、それはそれで面倒な時もあるので。
バッチはすぐにスパゲッティみたいになりますしね。

620 :デフォルトの名無しさん:2014/02/05(水) 11:19:27.73
目的と手段を取り違える阿呆に騙されるなよ

621 :デフォルトの名無しさん:2014/02/05(水) 11:31:23.81
まあVBはおまけ程度です。ほんとに楽になればラッキー程度。基本はC++ですね。
いくつか試してみて一番使いやすい環境にに乗り換えようかなと。

622 :デフォルトの名無しさん:2014/02/05(水) 11:37:03.71
>>614
さすがに古すぎる気がする……最適化機能とか企画対応的な意味で
それにVisual Studioには普通にIDE付いてるからなぁ
(GCCならEclipseとかが定番。http://oshiete.goo.ne.jp/qa/1264141.html)
>>619
簡単な事しかしないならHSPおすすめ(宣伝)
APIやDLL叩けるし文字列操作も充実してるし、
簡単なデータ処理しかしなかったら困らないだろう

623 :デフォルトの名無しさん:2014/02/05(水) 11:37:30.37
昔のVBみたいな位置をC#が占めてる感じだな
手軽に作りたいならそっちがオススメ

間違ってもC++/CLIには手を出さないようにw
あれは仕事などで事情があって嫌々使うものだから

624 :デフォルトの名無しさん:2014/02/05(水) 11:44:30.23
http://d.hatena.ne.jp/DigitalGhost/20100322/1269291644

625 :デフォルトの名無しさん:2014/02/05(水) 12:11:50.10
>>622
ありがとうございます。
いろいろありますね。試してみます。
HSPは機会があれば勉強してみます。

>>623
あーなるほど、C#ですか。それも機会があれば勉強してみます。
C++/CLIはたしかによくわからないですね。説明を読めば読むほどわからない。
まあプログラムコード書くのが専門というわけではないので、そっちはちょっと縁がないと思いますね。
間違っても手を出すことはないと思います。

626 :デフォルトの名無しさん:2014/02/05(水) 12:22:16.12
キチガイHSP厨はこんなところにまで出てくるな。

>>625
騙されるなよ。
HSPは産廃だから関わった時間の分だけ人生をドブに捨てることになるぞ。
言語仕様が欠陥の塊過ぎて利用者が全く増えないから宣伝に来てるだけ。
他の言語と違って言語開発者に金が入るから利用者が減ると収入減だから必死なんだよ。
ちなみに完成して公開してもダウンロードした人がHSP製だと気付けばゴミ箱行き。
まさにゴミ。

627 :デフォルトの名無しさん:2014/02/05(水) 12:33:48.58
>>626
ご忠告どうも。

ただまあ繰り返しになりますけど基本C++がメインなんで、ほかの言語は気が向いたらやってみるかもしれない程度ですね。
C++で大体必要なことはできますからね。他の言語はもうちょっと楽できたらラッキー程度です。
まあFortranはソースコードだけ取ってきてコンパイルしなければならないこともありますけど。

628 :デフォルトの名無しさん:2014/02/05(水) 12:52:08.61
まあvs2013ee入れとけば、c++もc#もvbも使えるんだし、損は無いと思うぞ

MinGWでいいのならQt丸ごと入れる手もある
実はQt Creatorでもvcコンパイラも使えちゃうし

629 :デフォルトの名無しさん:2014/02/05(水) 13:14:16.85
>>626
あれはそもそも公開するようなソフト作るためのもんじゃないだろ
プロプラなソフトをちょっと自動操作させたいときなんかに
完全にWin32apiに特化した開発言語は何かと都合がいい
こんなのをC#やC++で書いてたらそれこそ時間をドブに捨てる

630 :デフォルトの名無しさん:2014/02/05(水) 13:22:52.53
>言語開発者に金が入る
HSPってフリーソフトなんじゃねーの?

631 :デフォルトの名無しさん:2014/02/05(水) 13:24:19.54
>>630
書籍

632 :630:2014/02/05(水) 13:29:15.38
>>631
いや開発者自身が本書いても別にいいじゃん

633 :デフォルトの名無しさん:2014/02/05(水) 13:31:10.66
嫌儲ここに極まれり

634 :デフォルトの名無しさん:2014/02/05(水) 14:07:20.88
彼はHSPに親を殺され人生をめちゃくちゃにされた復讐の鬼
一般人は関わってはならぬ

635 :デフォルトの名無しさん:2014/02/05(水) 14:51:36.59
>>623
C#って未だにVB程度のポトペタが出来ないんじゃなかったっけ?

636 :デフォルトの名無しさん:2014/02/05(水) 14:54:11.68
>>628
VS2010Pro使ってるんだけど、VS2013EEに乗り換えた方がいいのかな?

637 :デフォルトの名無しさん:2014/02/05(水) 15:00:35.34
>>636
ultimateの分析機能は強力だよ

638 :デフォルトの名無しさん:2014/02/05(水) 15:53:02.37
BluetoothGATTGetServicesの使い方がわかりません
特にhDeviceをどうやって指定したらいいかがわかりません

639 :デフォルトの名無しさん:2014/02/05(水) 16:52:51.98
>>636
Proもってないから、前向きに勝手なことを言うが、
いっそcl/c1/c2とかだけとりかえちゃってはどうか
ProならATL/MFC使えるし。いまや用途を選ぶが、あれは良いものだ

>>638
こんなんあったよ
http://www.getcodesamples.com/src/626B7D27/78B89453
http://www.getcodesamples.com/src/626B7D27/4FA7ED4F

640 :636:2014/02/05(水) 17:07:51.78
VS2013EEってMFCとかないのね
教えてくれてありがとう

641 :デフォルトの名無しさん:2014/02/05(水) 20:00:21.52
winでC++はC++ builder
Clangで最強

642 :636:2014/02/05(水) 20:38:10.37
ググってもわからなかったんで教えて下さい
vs2010 c++で新規プロジェクトを作るときに

Win32(WinAPIのネイティブ操作)
ATL(テンプレートライブラリ)
CLR(コモンランゲージランタイム←ナニコレ?)
MFC(クラスライブラリ、Win32のラッパー的存在)

とありますが、今から(.Netは無視して)勉強するならMFC,テンプレートによってはATLという認識で良いのでしょうか?

643 :デフォルトの名無しさん:2014/02/05(水) 20:56:46.89
>>642
何を勉強したいんだ?

C++をってことなら、Win32で空のプロジェクトを選べばいい

644 :デフォルトの名無しさん:2014/02/05(水) 21:07:06.27
C++勉強ならVCではなくて、GCC、Clangじゃないか

>>642
VCでC++使ってならMFC

645 :デフォルトの名無しさん:2014/02/05(水) 21:16:46.53
WTLは?

646 :636:2014/02/05(水) 21:22:05.63
VC++の勉強が必要なので、MFCから着手しようと思います
ありがとうございました

647 :デフォルトの名無しさん:2014/02/05(水) 21:22:58.85
MFC+ATLで良いのでは?

648 :デフォルトの名無しさん:2014/02/05(水) 21:24:53.86
Win32(おk)
ATL(イランしシラン)
CLR(触れてはいけない)
MFC(MSに魂を売るならよい選択)

649 :デフォルトの名無しさん:2014/02/05(水) 21:34:08.60
いまどき、MFCだなんて。

MFCをリニューアルしたのがC#だろ?

650 :デフォルトの名無しさん:2014/02/05(水) 22:00:31.59
>>649
いまCに近い言語でWinのGUIするならC#だからな

651 :デフォルトの名無しさん:2014/02/05(水) 22:08:25.13
用途を無視して一番面白いのは?

652 :デフォルトの名無しさん:2014/02/05(水) 22:17:35.85
>>651
C++マネッジド拡張

653 :デフォルトの名無しさん:2014/02/05(水) 22:26:37.98
>>651
lcc-win32

654 :636:2014/02/05(水) 22:27:49.75
C#は逆コンパイルされるのがなあ、、、

655 :デフォルトの名無しさん:2014/02/05(水) 22:33:11.49
>>651
c++11

656 :デフォルトの名無しさん:2014/02/06(木) 00:32:42.02
CDialog水準の簡単なものなら、mfc42(V6)がいい
新しいものは実際のところ大げさだろう
C++でありながら、VBに近い書き味が楽しめる
MFCより、もうちょっとテンプレートを活かしたものが好みならATL
COMで遊んでて(仕事してて)、アトリビュートでさくさくいきたければATL
ATLがわかれば、>>645 のとおり、WTLが射程に入ってくる

657 :デフォルトの名無しさん:2014/02/06(木) 00:36:20.53
>>636
MFCであれ、綺麗に書かれたものはきれいに逆汗される
逆汗すれば、実装者のストイックさが素人にもわかる(ただし素人は真似はできない)。
どのくらいの保護レベルを求めるかによるが、、

658 :636:2014/02/06(木) 00:40:14.98
>>657
そんなに綺麗にかけないから見られたくないという説

659 :デフォルトの名無しさん:2014/02/06(木) 02:59:21.04
お前らが書いたコードを逆コンまでして見ようなんて奴は未来永劫現れないからw
万が一居たとしてもよっぽどのバカな考古学者くらいだからw

660 :デフォルトの名無しさん:2014/02/06(木) 03:31:52.45
なんでソース見られることを気にするんだろうね
他人の書いたソース見るぐらいなら自分で1から作った方がよっぽど早いと思うんだけど

661 :デフォルトの名無しさん:2014/02/06(木) 06:32:25.02
>>660
自分で作った方が速いのはよほど単純なCUIツール程度だろ
特にベースとなるソフトになんか機能追加したり修正するときとか
↑を自分の与り知らぬ所でされたくないからクローズドにする奴結構いると思う

662 :デフォルトの名無しさん:2014/02/06(木) 06:35:07.38
>>661
早い ≠ 速い

663 :デフォルトの名無しさん:2014/02/06(木) 12:01:24.39
汚いソースがバレたくないというのは、チンコちっさいのが気になるのと同じで、
ばかばかしいと知りつつも気にするなと言っても気になるもの

そういうことなら、ATL/WTL行こう
笑われないコードを、俺は書く。っていうのは、いい原動力になると思う

664 :デフォルトの名無しさん:2014/02/06(木) 12:06:13.24
それもあるけど、やっぱりパクられたくないってのはあるな。
素人でもビギナーズラック的に部分的に洗練されたコード書くことがある。
たとえそれが偶然の産物でもたった10行でもパクられたくない。

665 :デフォルトの名無しさん:2014/02/06(木) 12:09:50.46
でも「コピペしてもいいけどお前も晒せよな!」というGPLの姿勢はちょっと嫌だねぇ

666 :デフォルトの名無しさん:2014/02/06(木) 12:14:47.46
GPLはまぁそういうライセンスってことでいいんだけど
うっかり紛れ込んだりすると厄介なのがね

667 :636:2014/02/06(木) 12:57:06.28
>>665
ゲームのチートツールは晒したくない
その他なら晒してもいい

668 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/06(木) 13:44:19.78
#define new new(__FILE__, __LINE__)
#define new_nothrow new(std::nothrow, __FILE__, __LINE__)
ここで以降のnewはnew(__FILE__, __LINE__)に展開するが、new_nothrowの中のnewは展開しないように
したいが、どうすればいい? 教えてちょんまげ

669 :デフォルトの名無しさん:2014/02/06(木) 14:22:21.63
馬鹿には無理りん

670 :デフォルトの名無しさん:2014/02/06(木) 15:12:09.80
関数型マクロとVA_ARGSでやりたいことはできるのでは?

671 :デフォルトの名無しさん:2014/02/06(木) 15:12:16.37
#define __STR2__(x) #x
#define __STR1__(x) __STR2__(x)
#define __LOC__ __FILE__ "("__STR1__(__LINE__)") : "

672 :デフォルトの名無しさん:2014/02/06(木) 15:13:28.17
ttp://www.02.246.ne.jp/~torutk/cxx/tips/varargs.html

673 :デフォルトの名無しさん:2014/02/06(木) 15:15:43.89
>>665
おまえが晒したときに、誰かが読みたいと思うような価値あるコードなんて1行もない

674 :デフォルトの名無しさん:2014/02/06(木) 15:20:29.61
読む前に価値を判断できるのだろうか

675 :デフォルトの名無しさん:2014/02/06(木) 15:21:35.95
だが読んでほしくない相手に限って
読んで何やかや言ってくる法則

676 :デフォルトの名無しさん:2014/02/06(木) 19:10:01.54
世の中そんなもん

677 :デフォルトの名無しさん:2014/02/06(木) 19:43:42.09
>>666
そうだよな。コードのgive&amp;takeだよな

678 :デフォルトの名無しさん:2014/02/06(木) 19:57:16.07
文字化けさせてるksプログラマ

679 :デフォルトの名無しさん:2014/02/06(木) 20:48:25.14
今晩自給2000円でスカイプにてC++のプログラム解説をしてくださる方募集です。
興味を持ってくださった方がいたらメールでお願いします。

680 :デフォルトの名無しさん:2014/02/06(木) 21:17:32.88
自給なんて書いてる奴に解説する奴いるか!阿呆

681 :デフォルトの名無しさん:2014/02/06(木) 21:18:35.22
教えていただくのであれば形は何であれお礼をするべきだと思います。

682 :デフォルトの名無しさん:2014/02/06(木) 21:19:07.08
ありがとう

683 :デフォルトの名無しさん:2014/02/06(木) 21:23:26.84
>>679
とりあえずどんなコードデバッグさせるつもりなんだ
後それじゃ詳細分からんだろ、怖くてメアド晒せん

684 :デフォルトの名無しさん:2014/02/06(木) 21:26:57.66
>>683
情報少なくて申し訳ないです。
本についてるCDのおまけデータです。
メールくだされば、個人情報を教えるので信用していただきたいです。

685 :デフォルトの名無しさん:2014/02/06(木) 21:32:14.60
>>684
本に付いてたら読めばある程度分かりそうな気がするけど、違う?
捨てアドで送るんでちょっと待ってくれ

686 :デフォルトの名無しさん:2014/02/06(木) 21:33:05.25
なぜSkypeなのか。なぜここで質問しないのか。

687 :デフォルトの名無しさん:2014/02/06(木) 21:34:32.05
>>685だけど、とりあえず送ってみた

688 :デフォルトの名無しさん:2014/02/06(木) 21:39:13.23
>>686
言葉では理解が不十分になってしまうからです。
理解力がないのでOTL

>>687
ありがとうございます!
返信しました。

689 :デフォルトの名無しさん:2014/02/06(木) 21:47:48.29
>言葉では理解が不十分になってしまう
・・・ビデオ通話?

690 :デフォルトの名無しさん:2014/02/06(木) 21:53:56.13
>>689
音声だけの通話で大丈夫です。

691 :デフォルトの名無しさん:2014/02/06(木) 21:56:24.00
ちょっとしたツールを晒す場所ってどこがいいのかな?

692 :デフォルトの名無しさん:2014/02/06(木) 21:58:18.87
>>691
つ、ツールとはなんでしょうか?
VisualStudioとかですか?

693 :デフォルトの名無しさん:2014/02/06(木) 22:00:40.83
>言葉では理解が不十分になってしまう
>音声だけの通話で大丈夫です

694 :デフォルトの名無しさん:2014/02/06(木) 22:02:01.67
>>693
音声で送受信できるのは言葉だけじゃないだろ
音楽でもいけるわけだから
音楽で説明して欲しいってことだろ

695 :デフォルトの名無しさん:2014/02/06(木) 22:02:14.09
うわあああ すいません。
スカイプだとうれしいのですが...

696 :デフォルトの名無しさん:2014/02/06(木) 22:03:52.93
age2.tvとか斧とかかな

697 :デフォルトの名無しさん:2014/02/06(木) 22:04:57.18
>>692
別にお前に話しかけてるわけじゃないw

698 :デフォルトの名無しさん:2014/02/06(木) 22:08:50.11
メールやり取りしたならそっちでやれよw

699 :デフォルトの名無しさん:2014/02/06(木) 22:09:17.94
>>697
この流れでややこしいレスするんじゃねえw
まあ>>696で問題ないだろ

700 :デフォルトの名無しさん:2014/02/06(木) 22:29:24.21
>>699 すいませんOTL

701 :デフォルトの名無しさん:2014/02/06(木) 23:23:21.04
独創的なコードってなかなか書かない

おおっこれはうまく書けた!今日は冴えてる俺最高wwwwってコードならあるな

702 :デフォルトの名無しさん:2014/02/06(木) 23:41:18.43
>>701
他人が保守しないならどんなオナニーでも許されるんですけどね……
そうでなくても奇抜なコードだと見返した時に理解しづらいから
コメントはしっかり書かないとマズい

703 :デフォルトの名無しさん:2014/02/07(金) 00:04:59.05
>>701はあえて「書かない」って表現にして、書こうと思えばいつでも書けるぜ、
というニュアンスを含ませたいんですねわかります。

704 :デフォルトの名無しさん:2014/02/07(金) 00:15:07.90
コードを理解しやすくなんて、そうそううまくいかないと思う。

705 :デフォルトの名無しさん:2014/02/07(金) 00:25:22.54
お勧め「リーダブルコード」

706 :デフォルトの名無しさん:2014/02/07(金) 00:36:35.04
生徒に理解させようと長年工夫されている教科書、参考書とかでもたやすく理解できるとは限らない。
読めれば理解できるってのはよっぽど内容が簡単なときしか成り立たない話だ。

707 :デフォルトの名無しさん:2014/02/07(金) 08:00:21.60
>>706
> 生徒に理解させようと長年工夫されている教科書、参考書とかでもたやすく理解できるとは限らない。

それは単にお前の頭が...

708 :デフォルトの名無しさん:2014/02/07(金) 08:23:41.32
>>706
リアルでこんなこと言ったら黒歴史になるレベル

709 :デフォルトの名無しさん:2014/02/07(金) 17:04:20.11
からの〜?

710 :デフォルトの名無しさん:2014/02/07(金) 17:09:05.77
709 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

711 :デフォルトの名無しさん:2014/02/07(金) 17:10:15.92
703 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

712 :デフォルトの名無しさん:2014/02/07(金) 17:11:26.14
701 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

713 :デフォルトの名無しさん:2014/02/07(金) 17:12:50.64
670 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

714 :デフォルトの名無しさん:2014/02/07(金) 18:50:24.96
か ら の 〜 ?

715 :デフォルトの名無しさん:2014/02/07(金) 19:20:29.33
NG推奨ワード: あぼ〜ん[あぼ〜ん]

716 :デフォルトの名無しさん:2014/02/07(金) 21:01:31.38
>>707,708
黒歴史で悪かったな。
おまえらみたいに頭良かったら俺も苦労しなかっただろう。
こっちはシローあたりでもう難しいと感じてしまったんでな。

717 :デフォルトの名無しさん:2014/02/07(金) 21:03:40.85
716 名前:あぼ〜ん[あぼ〜ん] 投稿日:あぼ〜ん

718 :デフォルトの名無しさん:2014/02/07(金) 21:27:59.87
シロ―?

719 :デフォルトの名無しさん:2014/02/07(金) 21:41:55.69
46のことだよ

720 :デフォルトの名無しさん:2014/02/07(金) 22:17:18.63
>>707,708
ゆとり?高卒?

721 :デフォルトの名無しさん:2014/02/07(金) 22:29:06.19
流行り廃りがあるんだよ
いま読みやすくても30年後にそうとは限らない

722 :デフォルトの名無しさん:2014/02/07(金) 22:37:00.95
めったに積もらない雪がめちゃ積もってきて変なテンションなんで
オールナイトでプログラミングだずぇ@大阪

723 :デフォルトの名無しさん:2014/02/07(金) 22:53:49.97
>>722
邪魔だ
Twitterに書いてろ

724 :デフォルトの名無しさん:2014/02/07(金) 23:34:40.10
死蝋?

725 :デフォルトの名無しさん:2014/02/07(金) 23:55:20.18
>>720
マジなの? (w

726 :デフォルトの名無しさん:2014/02/08(土) 09:01:32.87
>>716
シロー部分群?
代数学序論とかか?

727 :片山博文MZ無能 ◆T6xkBnTXz7B0 :2014/02/08(土) 12:20:01.95
アンパンマン、新しい顔ができたよ。

Simple Memory Management System
https://github.com/katahiromz/SMMS

MZC3 C/C++ garbage collector
https://github.com/katahiromz/MZC3_GC

728 :デフォルトの名無しさん:2014/02/08(土) 13:14:11.55
ちょっと聞きたいんだけど、
vector<double> a(100); といった感じで初期化した場合、
100要素分があらかじめ確保されるのは分かるんだけど、
その中身って0(0.0)であることは規格で保証されてる?

729 :デフォルトの名無しさん:2014/02/08(土) 13:41:33.02
↓自動規格検索機

730 :デフォルトの名無しさん:2014/02/08(土) 13:55:57.12
なぜvector<double> a(100, 0)としないのか

731 :デフォルトの名無しさん:2014/02/08(土) 14:12:09.18
マニュアル読みたくないからに決まってんだろ

732 :デフォルトの名無しさん:2014/02/08(土) 14:16:53.71
マニュアル読めば、最初のレスが付く前に解決していただろうに

733 :デフォルトの名無しさん:2014/02/08(土) 14:44:49.89
doubleのゼロ初期化は0.0になるとは限らないという定番ミス

734 :デフォルトの名無しさん:2014/02/08(土) 16:07:48.72
>>730-732
thx
念のために0.0で初期化しておくわ
(vector<double> a(100, 0.0);にするということ)

735 :デフォルトの名無しさん:2014/02/08(土) 16:16:52.12
しかし結果は変わらないのであった。

736 :デフォルトの名無しさん:2014/02/08(土) 16:48:49.02
え 0 は 0.0 にならんの?
memset してるわけじゃあるまいし

737 :デフォルトの名無しさん:2014/02/08(土) 18:08:29.01
IEEE754なら0は0.0になるけどそれ以外の浮動小数点型は知らん

738 :デフォルトの名無しさん:2014/02/08(土) 18:08:57.43
か ら の 〜 ?

739 :デフォルトの名無しさん:2014/02/08(土) 18:22:09.90
memset()と勘違いしている馬鹿はレスするなよ。

740 :636:2014/02/08(土) 18:23:58.22
CStringからwchar_tへ変換する方法を教えて下さい
ぐぐってもユニコード以外の場合しか見つかりません
VS2010を使用しております

741 :636:2014/02/08(土) 18:52:49.29
最終的にbyteにしたいのですが
なんかこんがらがってきたので
また出直します
失礼しました

742 :デフォルトの名無しさん:2014/02/08(土) 19:09:44.02
>>740
こいつはhoge基地

743 :デフォルトの名無しさん:2014/02/08(土) 19:23:09.90
>>742
寄ってくるな チョーセン人

744 :デフォルトの名無しさん:2014/02/09(日) 03:35:35.55
AnsiToOem()
OemToAnsi()
実は使ったことない、いい機会なのでヘッダみてきた

BOMにきおつけろ

745 :デフォルトの名無しさん:2014/02/09(日) 03:38:29.79
わすれてた
ちょいちょいと書くのに_bstr_t とか便利だよ

746 :デフォルトの名無しさん:2014/02/09(日) 06:13:05.96
_bstr_tはBSTRの代替なので用途が違う気がする。
ここでCStringWが出てこないのは、マイナーだからかな。

747 :デフォルトの名無しさん:2014/02/09(日) 08:53:43.96
CT2W( (LPCTSTR)string ) でいいだろ。

748 :デフォルトの名無しさん:2014/02/09(日) 09:01:39.48
CStringはwchar_tだと思うのだが
まさか今時MBCSでコンパイルしてる馬鹿はいないよね?

749 :デフォルトの名無しさん:2014/02/09(日) 20:30:49.43
CStringがあるようなhogeライブラリを今時使う馬鹿はいないよね?

750 :デフォルトの名無しさん:2014/02/09(日) 20:36:16.63
WTLなしでGUIアプリは書きたくないな

751 :デフォルトの名無しさん:2014/02/09(日) 20:53:53.87
MFCを使う奴はHogeということですか?

752 :重要:2014/02/09(日) 20:58:29.04
【重要】
hogeの使用は荒らし行為として禁止されています。
使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
>>1を読んで下さい

753 :デフォルトの名無しさん:2014/02/09(日) 21:28:54.29
>>752
荒らしはするなよ

754 :デフォルトの名無しさん:2014/02/09(日) 22:03:15.36
>>736
0.0になります。
vectorはdefault-insertするので、
allocator_traits::constructが呼ばれ
allocator::constructが double{} 相当の値に初期化します。

755 :デフォルトの名無しさん:2014/02/09(日) 22:09:34.11
ユニコードでデータサイズを調べるとき、どっちのほうが適切でしょうか?

DWORD dwDataLen=(DWORD)(sizeof(m_EDIT_BOX)+1);
DWORD dwDataLen=(DWORD)(wcslen(m_EDIT_BOX)+1);

756 :デフォルトの名無しさん:2014/02/09(日) 22:12:04.22
static_assert(std::numerc_limits<double>::is_iec559, "オマエのコンパイラおかしくね?");
これを入れておけばok

>>775
どちらも失格

757 :デフォルトの名無しさん:2014/02/09(日) 22:12:38.22
誤 >>775
正 >>755

758 :デフォルトの名無しさん:2014/02/09(日) 22:20:46.25
>>755
auto kuso = _tcslen( m_EDIT_BOX.文字列を取り出すメンバー関数() ) + 1;
if ( static_cast<DWORD>(kuso) != kuso )
 throw "糞デカすぎだろおい";
DWORD dwDataLen = static_cast<DWORD>(kuso);

759 :デフォルトの名無しさん:2014/02/09(日) 22:34:49.66
>>758
サンプルソースまでありがとうございます><

760 :デフォルトの名無しさん:2014/02/09(日) 22:44:55.75
二人の「データサイズ」の認識が一致したかどうかを知るものはいない

761 :デフォルトの名無しさん:2014/02/09(日) 22:53:06.87
>>752
荒らすなチョーセン人

762 :デフォルトの名無しさん:2014/02/09(日) 22:54:31.55
↑ はいつもの上げ荒らしbot

763 :デフォルトの名無しさん:2014/02/09(日) 23:08:02.99
エスパーで答えるなら、バイト数数えたいのか、文字数数えたいのかによるぞ
必要なのはほとんど前者だが、後者が必要なこともある
あと前者なら、末尾は00 00 かもね

764 :デフォルトの名無しさん:2014/02/09(日) 23:24:48.73
バイト数を数えたいとき:
 _tcslen( m_EDIT_BOX.文字列を取り出すメンバー関数() ) * sizeof(TCHAR)

文字数を数えたいとき:
 _tcslen( m_EDIT_BOX.文字列を取り出すメンバー関数() )

C文字列形式で格納するために必要なバイト数:
 (_tcslen( m_EDIT_BOX.文字列を取り出すメンバー関数() ) + 1) * sizeof(TCHAR)

765 :デフォルトの名無しさん:2014/02/09(日) 23:29:04.14
おお、マジでありがとう!
byteにしなきゃいけないんです

766 :デフォルトの名無しさん:2014/02/09(日) 23:32:11.63
バイトテロ
という言葉が思い浮かんだのは何故だろう

767 :デフォルトの名無しさん:2014/02/09(日) 23:38:20.78
宗田理ですね、わかりますん

768 :デフォルトの名無しさん:2014/02/10(月) 00:36:24.96
>>762
また、チョーセン人が勝手なルール作り出してるよ
死ね死ね死ね

769 :デフォルトの名無しさん:2014/02/10(月) 06:14:16.21
>>766
ちょっと前にスーパーのアイスケースやステーキハウスの冷蔵庫に入った写真公開して閉店とかの騒ぎがあったからでしょ。

770 :デフォルトの名無しさん:2014/02/10(月) 06:19:05.05
今日一日働けば明日は休みか・・・
大渕先生かわいいな

771 :デフォルトの名無しさん:2014/02/10(月) 08:03:06.90
すまん、うちは4連休だわ

772 :デフォルトの名無しさん:2014/02/10(月) 08:17:21.23
すまん、俺はずっと休みというか自宅勤務してる

773 :デフォルトの名無しさん:2014/02/11(火) 00:19:09.41
メンバ関数内でしか使わない変数があったとして、その変数は関数内のメンバ変数とするべきなのか、一応クラス自体のメンバ変数としてヘッダファイル内で定義するべきなのか、
効率的にはどっちがいいんでしょうか?

774 :デフォルトの名無しさん:2014/02/11(火) 00:21:25.30
>>773
関数内のメンバ変数とは何だ?
ただのローカル変数のことなら、当然そっちのほうが局所的で効率的だしヘッダに晒すことも無い。

775 :デフォルトの名無しさん:2014/02/11(火) 00:22:18.70
ローカル変数かメンバ変数かってこと?
ローカル変数で済むならローカル変数の方がいいけど

776 :デフォルトの名無しさん:2014/02/11(火) 00:26:25.09
>>774-775
そうです、ローカル変数のことでした。アホな書き方してしまってすみません。
結局、ローカル変数でもその関数内で使う時に作成して終わったら破棄して・・・という事が多分内部的に行われてると思うんですけど、
だったら最初から定義されてる方がすぐ見にいけるから効率がよかったりするのかなと思ったんですが、そんなこともないんですかね

777 :デフォルトの名無しさん:2014/02/11(火) 00:33:26.80
>>776
コンストラクタ・デストラクタが重いクラス型の変数で、繰り返し使われるならメンバに置いたほうがいいかもね。
いずれにしても、気になるなら実測しろ。

778 :デフォルトの名無しさん:2014/02/11(火) 00:39:38.42
>>777
そうですね、失礼しました。あざっす

779 :デフォルトの名無しさん:2014/02/11(火) 06:20:21.66
>>773
内容を見てないからあれだけど、ローカル変数でもメンバ変数でもなく、
「引数として渡すべき」という可能性もあるな。

780 :デフォルトの名無しさん:2014/02/15(土) 12:05:24.18
http://kohada.2ch.net/test/read.cgi/prog/1190866177/816
  ↑  ↑  ↑  ↑  ↑  ↑

781 :デフォルトの名無しさん:2014/02/17(月) 02:38:36.82
ローカル変数で
const int &r = 3;
のようにrvalueを代入しても、関数の引数にrvalueを渡した時と同じくrの解放までインスタンスが保持されると考えて大丈夫でしょうか

782 :デフォルトの名無しさん:2014/02/17(月) 02:55:43.95
>>781
実装はともかく形式的には整数リテラルの考え方でいんじゃね
つまりプログラムの開始から終わりまで生存

783 :デフォルトの名無しさん:2014/02/17(月) 07:31:56.21
当てずっぽうに言うと、規格の8.5.3と12.1章あたりだったきが

784 :デフォルトの名無しさん:2014/02/17(月) 09:22:55.81
>>782, >>783
有難うございます、下記のコードを試したら変数rのスコープ失うまで確保されてました延命されるで問題なさそうです
class Test {
public:
&nbsp;&nbsp;Test() { cout << "Test()" << endl; }
&nbsp;&nbsp;~Test() { cout << "~Test()" << endl; }
};

int main()
{
&nbsp;&nbsp;cout << "start" << endl;
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;const Test &r = Test();
&nbsp;&nbsp;&nbsp;&nbsp;cout << "hoge" << endl;
&nbsp;&nbsp;}
&nbsp;&nbsp;cout << "end" << endl;

&nbsp;&nbsp;return 0;
}

785 :デフォルトの名無しさん:2014/02/17(月) 19:09:18.34
ローカル変数の場合はスコープの終わりまで一時変数の寿命が延長されるけどクラスのメンバ変数に束縛したらその行で寿命が終了するから注意

786 :デフォルトの名無しさん:2014/02/17(月) 22:25:24.64
>>784
荒らしは去れ

787 :デフォルトの名無しさん:2014/02/18(火) 18:59:04.06
質問です。。。
どうしてstd::for_eachは渡された関数オブジェクトを返すのでしょうか。
どうして返り値がvoidじゃダメだったんでしょうか。

788 :デフォルトの名無しさん:2014/02/18(火) 20:28:29.70
関数オブジェクトが状態を持っている時にそれを得られるように

789 :デフォルトの名無しさん:2014/02/18(火) 21:13:36.75
template<typename It, typename Fn> Fn for_each(It first, It last, Fn Func);
というシグネチャを
template<typename It, typename Fn> void for_each(It first, It last, Fn&& Func);
に変えるんじゃダメなん?

790 :デフォルトの名無しさん:2014/02/18(火) 21:40:07.91
戻り値の方が綺麗じゃん

791 :デフォルトの名無しさん:2014/02/18(火) 21:40:52.93
for_each(begin, end, funcObj()).func2()とかできるようにでしょ

792 :デフォルトの名無しさん:2014/02/18(火) 21:52:53.95
コンパイルが通りません。どなたかお助けを
http://ideone.com/c14Uyd

793 :デフォルトの名無しさん:2014/02/18(火) 21:56:05.58
>>787
ISO標準化委員会が意味や機能でなく処理しか考えない低脳だったから

794 :デフォルトの名無しさん:2014/02/18(火) 21:59:19.56
そう思うんならそうなんだろう
お前の頭の中ではな

795 :デフォルトの名無しさん:2014/02/18(火) 22:06:16.51
for_each(begin, end, funcObj()).func2()
なんでfor_eachの結果がfuncObj()なんだよ。
意味的に変だろ。

796 :デフォルトの名無しさん:2014/02/18(火) 22:06:36.79
>>792
コンパイラのバグです。
コンパイラを代えよう。

797 :デフォルトの名無しさん:2014/02/18(火) 22:07:27.90
おこったらまけだよ

798 :792:2014/02/18(火) 22:14:05.70
>>796
マジですか。
変えろと言われても急には厳しゅうございます…
とりあえず、ありがとうございます

799 :デフォルトの名無しさん:2014/02/18(火) 22:16:19.25
きちがいしかいないな

800 :デフォルトの名無しさん:2014/02/18(火) 22:17:19.13
>>799=キチガイ
だそうです

801 :デフォルトの名無しさん:2014/02/18(火) 22:34:00.43
>>795
そうだよな。voidでいいと思う。いまさら変えられないだろうが。

802 :デフォルトの名無しさん:2014/02/18(火) 22:47:40.53
誰かが使いそう→誰も使わないっていうのはC++の毎度のパターンなんだからいい加減諦めとけ。

803 :デフォルトの名無しさん:2014/02/19(水) 00:00:53.19
>>788
>>791
なるほど。なんとなく納得出来ました。
こんな面倒なことする人はいないと思うけど、
struct Add
{
Add() : sum_(0) { }
void operator()(int x) { sum_ += x; }
int sum() { return sum_; }
private:
int sum_;
};
int main()
{
std::vector<int> v = { 1, 2, 3, 4, 5 };
int sum = std::for_each(v.begin(), v.end(), Add()).sum();
std::cout << "合計は" << sum << "です。" << std::endl;
}
っていうことが出来ないほうがいいか、出来る方がいいかでいうと、
確かに出来たほうがいいような気がします。。。

804 :デフォルトの名無しさん:2014/02/19(水) 00:00:54.63
auto_ptrはよく使っているよな

805 :デフォルトの名無しさん:2014/02/19(水) 01:01:17.62
どっちにしろ
template<typename It, typename Fn> Fn for_each(It first, It last, Fn&& Func);
と変えればすべて解決

806 :デフォルトの名無しさん:2014/02/19(水) 10:19:04.88
反復子は皆iterator_categoryやvalue_typeとかのpublicなデータ型を持っているのに、
iterator_traitsというクラスがあり、わざわざそれを通してそれらのデータ型にアクセスするのは、
イテレータがポインタやconstなポインタ型だった場合も同じように扱えるようにするため
っていう認識で正しいのでしょうか。
それ以外にも理由があるのでしょうか。

807 :デフォルトの名無しさん:2014/02/19(水) 11:43:50.08
>>806
涙拭けよwプッ

808 :まんちゃん ◆SYZTEPEAHI :2014/02/19(水) 12:04:00.22
;

809 :デフォルトの名無しさん:2014/02/19(水) 13:04:47.86
voidでいいと言う奴はお前が使わなければいいだけ

810 :デフォルトの名無しさん:2014/02/19(水) 16:56:48.25
A「仕様のここが意味的におかしくね?
B「嫌なら使うな!

Bは会話のできないアスペか、標準化委員会のメンバー

811 :デフォルトの名無しさん:2014/02/19(水) 16:58:20.14
>>809
forkすりゃいいじゃん

812 :デフォルトの名無しさん:2014/02/19(水) 19:00:31.17
ということにしたいのですね。

813 :デフォルトの名無しさん:2014/02/19(水) 19:21:09.35
別の物を返せとか○○という問題があるから返すなとか言うならともかく、なんでvoidじゃないんだとか言うバカ

814 :デフォルトの名無しさん:2014/02/19(水) 20:16:51.84
voidにしろと言ってるやつっているの?
せいぜい>>793がそうかもってくらいか

815 :デフォルトの名無しさん:2014/02/19(水) 20:29:26.58
voidがいい派:>>787,801
引数のファンクタを返すのはおかしい派:>>793,795
引数のファンクタを返すのはおかしいから&&にしろ派:>>789,805
戻り値こそ便利だろ派:>>791,803

816 :デフォルトの名無しさん:2014/02/19(水) 20:45:47.09
>>815
オレは>>805だが Fnを返してるぞ。よく見ろ。

状態を持つオブジェクトの左辺値を渡してんのに参照で受けないのはマズいんじゃないか、
って意味の&&であって、ファンクタを返すのはOK

817 :デフォルトの名無しさん:2014/02/19(水) 20:46:31.62
for_eachという関数名にふさわしい戻りじゃないよね。
機能の抽出がヘタなC初心者が
処理が長いから関数に分割しました
的な気持ち悪さがある。

818 :デフォルトの名無しさん:2014/02/19(水) 20:49:38.81
>>816
せっかくだからFn&&返そうぜ
左辺値で受けたらそのまま
右辺値でうけたらその右辺値の参照を返す

819 :デフォルトの名無しさん:2014/02/19(水) 20:58:03.35
それはどうかな

820 :デフォルトの名無しさん:2014/02/19(水) 21:03:34.80
とりあえずファンクタがわからないからくぐってきた
そしてよくわからなかった(´・ω・`)

821 :デフォルトの名無しさん:2014/02/19(水) 21:11:30.21
形式的にはoperator()を持つクラス
軽量で状態を持たないのが典型的とされる

822 :デフォルトの名無しさん:2014/02/19(水) 21:18:54.36
コピコンは省略してもいいけど省略されなくても文句は言えない。
だから>>803みたいな変数メンバを持つファンクタは
FnでなくFn&&で受け取るのが妥当。
今のfor_eachは右辺値参照が無かったときの仕様を引きずってるだけだろ?

823 :デフォルトの名無しさん:2014/02/19(水) 21:32:19.95
引数も戻値もmoveされる仕様のはずだぜ

824 :デフォルトの名無しさん:2014/02/19(水) 21:36:49.67
なるほど、よくわかった
ありがとう!

825 :デフォルトの名無しさん:2014/02/19(水) 21:37:12.66
そんな関数

826 :デフォルトの名無しさん:2014/02/19(水) 21:50:11.87
>>823
お前はファンクタごときにpimplして
ムーブコンストラクタ定義しろというのか?

>引数も戻値もmoveされる仕様のはずだぜ
規格のページはよ

827 :デフォルトの名無しさん:2014/02/19(水) 23:14:19.39
関数内で生成したインスタンスはmoveされるはず、
引数で渡す時は明示的なstd::moveと&&が必要だったはず

828 :デフォルトの名無しさん:2014/02/19(水) 23:18:04.41
はず...ってあんまり説得力ないよな

829 :デフォルトの名無しさん:2014/02/19(水) 23:26:25.41
戻り値がprvalueってことならそりゃmoveされるだろ。
関数内で生成したかどうか無関係。

830 :デフォルトの名無しさん:2014/02/19(水) 23:26:41.52
直子は俺を好きなはず

831 :デフォルトの名無しさん:2014/02/19(水) 23:37:44.24
左辺値でもmoveされるよ

832 :デフォルトの名無しさん:2014/02/19(水) 23:50:10.19
>>831
いやされない、その場合はコピコンが走る

833 :デフォルトの名無しさん:2014/02/19(水) 23:56:50.47
というか左辺値で勝手にmoveされるとインスタンス保持してたはずなのに関数読んだら何故かメンバインスタンスがnullptrになったりしてやばい

834 :デフォルトの名無しさん:2014/02/20(木) 00:03:52.90
ttp://ideone.com/GYbJT7
どう見てもmoveされてますけど

835 :デフォルトの名無しさん:2014/02/20(木) 00:13:39.08
>>834
関数等のスコープ内で生成したものを返す時は最適化によってrvalueになる(NRVO)、
※ただし、暗黙変換が絡む場合はこの最適化が効かなくなるので明示的なmoveが必要

836 :デフォルトの名無しさん:2014/02/20(木) 00:22:26.40
>>835
その論で言っても左辺値がmoveされてる事実は変わらんが

837 :デフォルトの名無しさん:2014/02/20(木) 00:24:20.34
>>834
どこに左辺値があるんだよ。
prvalueがmoveされてるだけで何の疑問もないだろが

838 :デフォルトの名無しさん:2014/02/20(木) 00:25:45.46
>>836
いや、生成して返す時は左辺値に見えるけど最適化されて右辺値になってるから
文法上は左辺値だけど処理的には右辺値

839 :838:2014/02/20(木) 00:29:57.96
>>837
サンクス、上手く説明出来てなかった、
lvalue、rvalue、場合によるrvalueの違いをこの記事が説明してくれてた
ttp://d.hatena.ne.jp/iorate/20111207/1323280542

840 :デフォルトの名無しさん:2014/02/20(木) 00:59:11.74
>>837
std::unique_ptr<int> p
このpは紛れもなく左辺値だろう
>>838
ttp://d.hatena.ne.jp/gintenlabo/20110125/1295991902
ttp://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3852.html#US13
最適化がなくてもmoveされるし
ttp://ideone.com/LUosOa
この場合NRVOが効かないがちゃんとmoveされている

841 :デフォルトの名無しさん:2014/02/20(木) 01:13:02.27
>>840
hogeサイト出す時点で説得力ないとなる

842 :デフォルトの名無しさん:2014/02/20(木) 01:15:56.58
>>835,838
NRVO は C++98 ですら許されているコンストラクタ省略による最適化。
右辺値とか move とか関係ないよ。

843 :デフォルトの名無しさん:2014/02/20(木) 01:18:09.04
最適化の有無でコンパイルが通ったり通らなかったりしたらまずいわな

844 :デフォルトの名無しさん:2014/02/20(木) 08:21:33.54
>>826
§25.2.4 For each
に思っいっきり書いてありますがな…
10行程度だから読んでみなよ

845 :デフォルトの名無しさん:2014/02/20(木) 08:27:24.26
>>844
よんだけれど書いてないから言っているのだが

846 :デフォルトの名無しさん:2014/02/20(木) 08:32:40.55
>>845
14882:2011だよね?

847 :デフォルトの名無しさん:2014/02/20(木) 09:08:52.88
企画のページはよ

848 :デフォルトの名無しさん:2014/02/20(木) 09:26:37.11
>>836
GCCのバグか規格策定前の古い仕様じゃないの?

>>842
省略は許されてもコピー/ムーブのセマンティクスは守らないといけなかったはず。

ちなみにfor_eachはファンクタがMoveConstructibleであることと
戻り値がstd::move()されることが規定されているね。
コピコンしか無い場合はムーブされようがないのでコピーされる恐れがある。
引数についてはmoveされそうな記述が見あたらないのだけれど。

849 :848:2014/02/20(木) 09:42:33.53
>省略は許されてもコピー/ムーブのセマンティクスは守らないといけなかったはず

と思ったけど12.8p31にそのような記述が見つけられなかったでござる

850 :KUSO KOTE ◆unko./w.Osri :2014/02/20(木) 17:11:29.70
>>841
ではホゲではないソースをば。
ISO/IEC 14882:2011 12.8 段落32
When the criteria for elision of a copy operation are met or would be met save for the fact that the source
object is a function parameter, and the object to be copied is designated by an lvalue, overload resolution to
select the constructor for the copy is first performed
as if the object were designated by an rvalue.
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ただこの仕様は最適化とは関係ない模様。

851 :デフォルトの名無しさん:2014/02/20(木) 18:29:15.72
結局for_eachはどうあるべきなんだ?
1. Fn for_each(Itr, Itr, Fn)
2. Fn for_each(Itr, Itr, Fn&&)
3. Fn&& for_each(Itr, Itr, Fn&&)
殆どのファンクタはmoveコンスコを持ってないだろうから
returnがmove()ってことは1と2はRVOが働かず
3じゃないと無駄なコピーが走る?

852 :デフォルトの名無しさん:2014/02/20(木) 18:35:13.15
>returnがmove()ってことは1と2はRVOが働かず
イミフ
RVOは働く

853 :KUSO KOTE ◆unko./w.Osri :2014/02/20(木) 19:27:28.21
>>851
3の圧勝?
幾つか試してみた。
http://ideone.com/qtf8c6

854 :デフォルトの名無しさん:2014/02/21(金) 16:36:56.24
C++とDarkBASICってどっちが凄いの?

855 :デフォルトの名無しさん:2014/02/21(金) 17:20:58.40
簡易高速モーションブロアテスト - 楽しいDarkBASICプログラミング♪
http://upload.saloon.jp/src/up8474.zip

ファイルを開くと1.9MBの実行ファイルが出てくるから素直にクリックするといいw
サンプルプログラム。

モーションブロア(残像)は法線軌跡を計算して半透明3Dオブジェを使うものから、
画面バッファそのものを書き換えるものまで、処理方法は多岐に渡る。

自分で作ってみると面白い。

30fps出ていれば問題なし。

856 :デフォルトの名無しさん:2014/02/21(金) 18:06:36.87
さあ誰か実行してみて!

857 :デフォルトの名無しさん:2014/02/21(金) 18:07:47.45
うおお実行したくねえ

まあLinuxなんでしたくでもできないが

858 :デフォルトの名無しさん:2014/02/21(金) 18:55:52.18
専ブラで手軽にゴミレスあぼ〜んの一例

Ctl + Endキー (キャレットを新規に読み込みしてしまった最後尾のゴミレスに置きます)
Menuキー (マウス右クリックと同等、右Ctlキー付近に有ります)
zキー等 (メニューにガイド表示されているあぼ〜んアクセラレートキーでスレを綺麗にします)

この3ステップを色々組み合わせ上手くゴミレスを放置出来るようになりましょう。

859 :デフォルトの名無しさん:2014/02/21(金) 20:20:50.44
auto kuso = []{};
このkusoはコピーの際に例外が出ないことは保証されてる?

860 :デフォルトの名無しさん:2014/02/21(金) 23:13:21.60
「ブロア」w

861 :デフォルトの名無しさん:2014/02/22(土) 02:48:53.96
せっかく初見では笑うのを回避したのに、こいつ↑のせいでラーメン噴いた。

862 :デフォルトの名無しさん:2014/02/22(土) 12:15:43.19
モーションブロア(残像)

863 :デフォルトの名無しさん:2014/02/22(土) 13:31:47.44
空気読めない俺に解説を…

864 :デフォルトの名無しさん:2014/02/22(土) 13:49:49.61
>>863
モーションブロアはモーションブラー(被写体ぶれ)の誤表記。
と言うか「ブラー」(blur)がなんで「ブロア」になるんだ……
ネイティブ発音→http://ejje.weblio.jp/content/blur

ちなみに、ファイル自体をウイルスチェックしたけど一応パス
「Application (4).exe」なんていうやっつけにも程があるファイル名だけど、
サンドボックスで実行したところ「d3dx9_31.dllがありません」的なエラーが……
ググって落として実行させた画面がこんな感じ↓
http://i.imgur.com/kpK8JPx.png
……ああ、残像()だね。生暖かい目で見守ってやろうw

865 :デフォルトの名無しさん:2014/02/22(土) 14:21:57.18
ブロアアアアアアアアアアアアアアアアアアアアアアアアアア

866 :デフォルトの名無しさん:2014/02/22(土) 15:49:44.20
DarkBASIC本家が、C++ライブラリ出してるわけだが
http://toro.2ch.net/test/read.cgi/tech/1390171944/597

867 :デフォルトの名無しさん:2014/02/22(土) 21:07:17.33
>「d3dx9_31.dllがありません」的なエラー

言語に特定した話じゃないけど、
動作に必要な条件を提示できない(説明がない)
馬鹿の作ったプログラムはイラっとする。
特にUnix系に多い。

868 :デフォルトの名無しさん:2014/02/23(日) 21:26:26.82
>>867
> 「d3dx9_31.dllがありません」的なエラー
>
> 言語に特定した話じゃないけど、
> 動作に必要な条件を提示できない(説明がない)
> 馬鹿の作ったプログラムはイラっとする。
> 特にUnix系に多い。

そんなものを使うほうがおかしい

869 :デフォルトの名無しさん:2014/02/23(日) 22:06:12.96
どうして誰か一人がオンリーワンで悪いという思考になるんだろう

870 :デフォルトの名無しさん:2014/02/24(月) 00:13:50.54
directxのdllを指してるのにUnixってどういうことなんや
まるでワケガワカラナイヨ
あっ、Wineでdll読み込むような高度なことするプログラマーが多いってことか

871 :デフォルトの名無しさん:2014/02/24(月) 00:32:40.34
unixはライブラリ依存症が進行していて必要なライブラリの一覧を作る事が出来ない
直接の依存くらいなら可能だけど間接的なのは無理
って事だと思う

872 :デフォルトの名無しさん:2014/02/24(月) 00:51:51.30
.dllも.soも.dylibも動的リンクライブラリで、どれも同じだと思うんですが…
dll地獄って言葉はWindows発祥ですし、その批判は通らないな
あと一般ユーザーならともかく、プログラマーなら動的リンクライブラリ内部のシンボル見ればどの関数使ってるか
わかるしパッケージ管理が生きてるなら間接参照のライブラリを探すこともないだろう

873 :デフォルトの名無しさん:2014/02/24(月) 00:59:52.07
Windowsで地獄ならUNIXはなんと形容すればいいのでしょう?
とにかく地獄ですら天国に見えるような何かです。

874 :デフォルトの名無しさん:2014/02/24(月) 01:04:47.73
>>873
何か困ってるの?
*nix系の場合はパッケージ管理のコマンド一発ですんなり入るよ
野良ビルドするにしても
依存ライブラリは作法としてREADMEに書いてある
字が読めれば分かるでしょ
もし、その明記がされていないようなら
そんなものは使うべきではない

875 :デフォルトの名無しさん:2014/02/24(月) 01:09:37.42
アホウ
書いてあるのは直接依存してる奴だけだ

876 :デフォルトの名無しさん:2014/02/24(月) 01:16:23.11
だからなんだよw

877 :デフォルトの名無しさん:2014/02/24(月) 01:21:00.81
ム板でインスコ話ですか

878 :デフォルトの名無しさん:2014/02/24(月) 02:29:46.71
>>874
つまり、UNIXは使うべきでないと?

879 :デフォルトの名無しさん:2014/02/24(月) 02:34:21.96
>>874のような人はUNIX使いこなしてるぜ〜みたいな顔して語るんだけど、
実は使ったことが無いんだよね。
みんなが困ってることなのに。

まあせいぜい、Linuxインスコしてウェブ見れた!Linuxすごい!俺凄い!的な感じ。
どっか違うとこある?当たってるでしょ。

880 :デフォルトの名無しさん:2014/02/24(月) 07:32:12.85
Linuxのライブラリ依存問題のせいで
Steamなんかは、結局自前でSxSのような構成管理を作ってるもんな

881 :デフォルトの名無しさん:2014/02/24(月) 07:40:21.65
ここは初心者の談話室スレですか?

882 :デフォルトの名無しさん:2014/02/24(月) 08:31:07.32
え、lddすら知らないのか

883 :デフォルトの名無しさん:2014/02/24(月) 08:40:27.84
>>882
周回遅れは進路妨害をしないように

884 :デフォルトの名無しさん:2014/02/24(月) 08:42:41.22
>>883
えろうすんませんした

885 :デフォルトの名無しさん:2014/02/24(月) 10:05:06.07
依存ライブラリの依存ライブラリの依存ライブラリとかをReadmeに明記できない、つまりライブラリ使ってるのにライブラリの中身に疎い人がいるって話でしょ。
で、unixの文化圏の方がそういう人は多い傾向にある、ってことじゃないの?

886 :デフォルトの名無しさん:2014/02/24(月) 10:49:34.85
>>885
素のLinuxでvlcを野良ビルドしてから出直しなさい

887 :デフォルトの名無しさん:2014/02/24(月) 11:19:35.22
ヲタは事故中だから嫌だな

888 :デフォルトの名無しさん:2014/02/24(月) 12:12:14.92
要するにUNIX系の依存問題はWindowsとは別の意味で酷いってことでおk?

889 :デフォルトの名無しさん:2014/02/24(月) 12:29:51.51
それでOK
依存がループしている場合もある

890 :デフォルトの名無しさん:2014/02/24(月) 17:50:37.73
必要ライブラリを明記する事が難しいのでなく
何も考えずに「俺のパソコンで動いた」だけのものを
リリースする輩が多い。

891 :デフォルトの名無しさん:2014/02/24(月) 18:08:13.20
>>890
hoge君だからね

892 :デフォルトの名無しさん:2014/02/24(月) 21:06:20.94
>>890
チンカス君だからね

893 :デフォルトの名無しさん:2014/02/24(月) 21:58:43.28
>>890
例えばどんなの?

基本的にstableに合わせるからトラブルは圧倒的に少ないと思うよ

894 :デフォルトの名無しさん:2014/02/25(火) 00:19:37.33
動的リンクライブラリの性質は>>872に書いたとおりだが
>>890 >>885のようなことを防ぐためにGNU Autotoolsやcmakeがあるんでしょ
configure.ac書いときゃ依存ライブラリは自動チェックされるしなあ

Makefileぽーんと置いといて、あとよろしく〜
ってな感じのやつはダメだよね

895 :デフォルトの名無しさん:2014/02/25(火) 00:26:00.40
configureのキャッシュどうしてる?

896 :デフォルトの名無しさん:2014/02/25(火) 00:28:01.30
ビルド時に依存先ライブラリが自動的にDLされるというイカれた仕組みに頼っている
そしてネット上に(一見)有益なライブラリがたくさんあふれていてそれを無節操に取り込む文化

897 :デフォルトの名無しさん:2014/02/25(火) 00:30:44.01
configure実行にめちゃめちゃ時間がかかる。
システムの変更が少ないとき、普通はキャッシュ使うよね?

898 :デフォルトの名無しさん:2014/02/25(火) 01:26:43.39
cygwinのconfigureの遅さは異常
あれなんとかならんのか

899 :デフォルトの名無しさん:2014/02/25(火) 02:25:30.08
config.cacheをマージして使い回すといいよ

900 :デフォルトの名無しさん:2014/02/25(火) 21:10:47.67
時間がかかるのは問題ない
configureが失敗すると白昼の殺意

901 :デフォルトの名無しさん:2014/02/25(火) 23:49:54.49
>>896
Scalaer or Javaerがいるぞ、殺せー

902 :デフォルトの名無しさん:2014/02/25(火) 23:52:44.90
むしろすんなり成功するほうがまれ

903 :デフォルトの名無しさん:2014/02/26(水) 00:42:45.39
倍精度実数を出力するprintf("%lf\n",d);
は正しいんですか?林晴彦なんて、ねえ、なんでprintfに%lf使うの?とか書いてたけど
VC++は通るのよね。一方、gccでは4.8.1でもうまく出力されない。

しかし、C99ではprintfでも%lfが正しいという説が。
C++では間違いで、Cなら%lfは正しいの?

あとわからんのが、abs関数。

gcc4.8.1の場合、
#include <cmath>すると、abs(x)はxがdoubleなら戻り値もdouble
ところが、
#include "math.h" とすると、戻り値はintになってしまう。

VC++は意図的か、鈍感なのかdoubleを返す(C++なら関数の
オーバーロードでこっちが自然だと思うけど)

C99では、void main(void)とint main(void)はどちらが正しいか
規定されていない。C言語はかなり混乱してるように思うが?

904 :デフォルトの名無しさん:2014/02/26(水) 05:24:18.15
absの何が問題なのかわからん。
Cはオーバーロードがないから型ごとに別の名前をつけてるだけだと思うが。
戻り値doubleの絶対値ならfabsを使えばいい。

905 :デフォルトの名無しさん:2014/02/26(水) 05:44:23.91
>>903
C99が仕方なく%lfを合法にしただけで他の規格では完全に間違い

906 : ◆QZaw55cn4c :2014/02/26(水) 05:48:50.12
>>903
>しかし、C99ではprintfでも%lfが正しいという説が。
C99 では許容されている、という意味では正しい

>林晴彦なんて、ねえ、なんでprintfに%lf使うの?
不定長引数部分で浮動小数点数を渡す場合は default argument promotionhs により double にキャストされるから、ごく当然の疑問だね
(ISO/IEC 9899:1999 6.5.2.2.7 ですかね、この前後でちょっとわからないのがある‥‥)

907 :デフォルトの名無しさん:2014/02/26(水) 05:56:24.40
printf()系の"%lf"は本来間違いだよ。
その間違いが量産され続けているからそれを追認する形でC99で認められるようになっただけ。

908 : ◆QZaw55cn4c :2014/02/26(水) 05:58:26.89
>>903
>#include <cmath>すると、abs(x)はxがdoubleなら戻り値もdouble
これはちょっと理解できないね、 C では
int abs(int x)
double fabs(double x)
だからね

909 : ◆QZaw55cn4c :2014/02/26(水) 06:05:23.76
>>903
>C99では、void main(void)とint main(void)はどちらが正しいか規定されていない。
そういうわけでもない。主観的だが
int main(int c, char **v)
int main(void)
を「第一推薦としている」くらいには表現してもいいかと

現実にあるさまざまな処理系を規格でバッサリきらないようにか、
ISO/IEC 5.1.2.2.1.1 の末尾に in some other implementation-defined manner って書いてあるだけなのに
それをもって void main(void) を OK と主張するのもどーかと思ってしまう

910 :デフォルトの名無しさん:2014/02/26(水) 06:07:37.16
ああ、そっちを問題視してたのか。
「戻り値はintになってしまう」とか否定的に書いてあったから勘違いした。

911 :デフォルトの名無しさん:2014/02/26(水) 07:12:56.90
>C99では、void main(void)とint >main(void)はどちらが正しいか規定されていない

んなこたーない。
CでもC++でもコンパイラーの独自仕様が許されるのは引数の部分だ。
戻り値はintでなければならない。
ISO/IEC 9899:2011 5.1.2.2.1p1
ISO/IEC 14882:2011 3.6.1p2

>>>903
>C99が仕方なく%lfを合法にしただけで他の規格では完全に間違い

んなこたーない。
ここはC++スレで、その現規格である
ISO/IEC 14882:2011で許されている筈。
ISO/IEC 14882:2011 1.2p1

912 :デフォルトの名無しさん:2014/02/26(水) 07:23:06.33
>>911
C++11も追認したのか。勉強なった
進化の方向性としてはどうなんだこれ・・・無駄に複雑さが増すだけのような

913 : ◆QZaw55cn4c :2014/02/26(水) 07:38:23.48
>>911
>独自仕様が許されるのは引数の部分だ。戻り値はintでなければならない。
これは、そう読むのかな‥‥

ISO/IEC 9899:2011 5.1.2.2.1p1
>or equivalent;
とセミコロンでバッサリ切っているよ

JIS X 3010 でも
「上に掲げた三つの方法のいずれでもない処理系定義の方法」
となっており、戻り値は int でなければならないとまでは言い切れないよね

914 :デフォルトの名無しさん:2014/02/26(水) 07:53:16.20
gccは最近気づいたんですが、cppファイル作っていても(したがって
C++言語のコンパイラとして動作させていると思っていても)
#include "math.h"としたときはC言語と同様にabs(d)はint型を返します。
#include <cmath> としたときはabs(d)はdouble型を返します。

#include "math.h" と #include <cmath> は微妙に違うんですね。
VC++2008では、どちらでもabs(d)はdouble型を返すんですが。

言いたかったことはabs(d)はややこしいこと。もちろん、トラブル
を避けるために実数計算ではC++でもfabs(d)を使いますが。


void main(main) (コマンドライン引数は省略) は私は使いません。
しかし、C99の規格としては必ずしも誤りではない、C++としては
誤りということですか?しかし、VC++では通ってしまうのがやや
こしい。コンパイラのオプションスイッチを設定すればgccと同じ
ようにできるのかもしれませんが。

なんだかややこしいなあ、と思います。C99では統一されているかも
しれませんが、C++の方はVC++、gccなど処理系によって仕様が微妙に違う。

915 :デフォルトの名無しさん:2014/02/26(水) 08:04:45.86
>>914

正確には、gccはTDM gcc4.8.1 (MinGW)です。

916 :デフォルトの名無しさん:2014/02/26(水) 08:06:17.36
void main(main) → void main(void)

917 :デフォルトの名無しさん:2014/02/26(水) 08:19:57.52
>>914
>#include "math.h" と #include <cmath> は微妙に違うんですね。
G++は知りませんが、ISOの規格ではabs(double)は
doubleを返します。

918 :デフォルトの名無しさん:2014/02/26(水) 11:13:14.69
>>917
違うから名前変えてあるんだろあたりまえだ

919 :デフォルトの名無しさん:2014/02/26(水) 11:28:40.96
混乱を招くのに当たり前だというあんたの神経が変だわ。

920 :デフォルトの名無しさん:2014/02/26(水) 11:45:37.95
混乱するのはアホだけだから問題ない

921 :デフォルトの名無しさん:2014/02/26(水) 11:55:33.25
人類の9割はアホ

922 :デフォルトの名無しさん:2014/02/26(水) 12:19:57.37
double x;
abs(x);でint型のabsが呼ばれる事を期待しているアホしか困らない

923 :デフォルトの名無しさん:2014/02/26(水) 12:23:51.30
人類の1割はバカ

924 :デフォルトの名無しさん:2014/02/26(水) 21:16:43.22
C++覚えようか迷っています
C言語で大抵のことはできるけど、ごちゃごちゃになったりしませんか?

925 :デフォルトの名無しさん:2014/02/26(水) 21:20:18.54
大抵のことができるなら覚えなくていいんじゃない?
C++で作るしかないものがあるなら覚えればいい
オブジェクト指向を覚えたいならJavaかC#に行けばいい

926 :デフォルトの名無しさん:2014/02/26(水) 21:30:29.31
女を覚えた方がずっとためになる

927 :デフォルトの名無しさん:2014/02/26(水) 21:38:45.90
>>924
ならない。

928 :デフォルトの名無しさん:2014/02/27(木) 17:54:21.87
混同無

929 :デフォルトの名無しさん:2014/02/27(木) 19:01:51.72
http://wisdom.sakura.ne.jp/system/winapi/win32/win5.html
こちらのサイトの「文字列フォーマット」にあるソースを入力したのですが、文字化けしてしまいます。
原因わかりますか?

930 :デフォルトの名無しさん:2014/02/27(木) 20:21:00.42
>>929
古い20世紀のソースを21世紀で使うからそうなる
日本語なら古語を21世紀の現代で使うようなもの

931 :デフォルトの名無しさん:2014/02/27(木) 20:30:42.73
>>929
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1026021725

932 :デフォルトの名無しさん:2014/02/27(木) 21:19:01.69
>>930-931
記事がすでに古いものってことですかね?windows7の64bit版じゃ正常に動かないってことでしょうか。
ありがとうございます。

933 :デフォルトの名無しさん:2014/02/27(木) 21:25:23.85
そのサイトのはマルチバイト用だな、Unicode対応だとこう書く。

TCHAR chStr[128];
wsprintf(chStr, TEXT("インスタンスハンドル:%d"), hInstance);

934 :デフォルトの名無しさん:2014/02/27(木) 21:31:23.94
>>933
おお!ちゃんと表示されましたありがとうございます。

935 :デフォルトの名無しさん:2014/02/27(木) 22:13:44.74
Unicode対応ではなくジェネリックでしょ

936 :デフォルトの名無しさん:2014/02/27(木) 22:19:33.11
だったら_stprintfとすべきだな

937 :デフォルトの名無しさん:2014/02/27(木) 22:33:45.07
でcrtに依存すると

938 :デフォルトの名無しさん:2014/02/27(木) 22:37:21.97
そこはしゃあない

939 :デフォルトの名無しさん:2014/02/27(木) 22:41:29.60
今までのC++は201Xまでとして、C言語とは別にNew C++版を作ったらどうなんだ?
昔のC言語の仕様をとりこんでるせいでセキュリティの難問が発生してるし。

でも、禿が生きてる間は無理か。あいつは頭が良すぎる。理屈っぽ過ぎる。
頭の良い奴に言語を作らせたり、教科書かかせたらあかんw

でもC#がLinux上でも動くようにMicrosoftがフリーのNetframework版を
出せばいいんだ。絶対に出さないと思うけど。

しかし、それをやったらC++もJavaも消し飛ぶかもw

940 :デフォルトの名無しさん:2014/02/27(木) 22:43:16.73
C#はいいね
使わないけど

941 :デフォルトの名無しさん:2014/02/27(木) 22:43:58.00
>>922

やれやれ、利口な上で言ってるのか(一応、外交辞令)、それともひどく馬鹿なのか

942 :デフォルトの名無しさん:2014/02/27(木) 22:44:11.91
%d→%p

943 :デフォルトの名無しさん:2014/02/27(木) 22:44:17.78
型の重要性が分かる人の世界
「この動物は一体何ですか?」
「実はこれ"鳥"の仲間なんですよ」
「へー 不思議だなー」

型の重要性が分からない人の世界
「これは一体何ですか?」
「よちよち歩いてますね・・・・不思議ですね・・・」

944 :デフォルトの名無しさん:2014/02/27(木) 22:45:39.01
>>936
念のためいっとくけどwsprintfは既にジェネリックだからな(wsprintfW<->wsprintfA)

945 :デフォルトの名無しさん:2014/02/27(木) 22:45:50.66
>>943
バカの一つ覚えだな

あ、すまん、馬鹿だからそう考えてしまうのか

すまんすまん
バカには優しくしないとな

946 :デフォルトの名無しさん:2014/02/27(木) 22:47:38.84
>>936
wsprintfはジェネリックなんだよ
マクロでwsprintfA/Wに置き換えられるんだから

947 :デフォルトの名無しさん:2014/02/27(木) 23:28:33.06
>>939
monoでいいじゃん

948 :デフォルトの名無しさん:2014/02/28(金) 00:57:30.27
いまwinでマルチバイトコンパイルすることあるのか
お前らはuni、マルチ両方対応コードにしている?

949 :デフォルトの名無しさん:2014/02/28(金) 01:05:06.52
普通にジェネリックだな
コスト変わらないし

950 :デフォルトの名無しさん:2014/02/28(金) 01:14:47.72
mbcs -> utf8
utf16 -> utf32
でいいよね

951 :デフォルトの名無しさん:2014/02/28(金) 01:16:48.98
さすがにサイズが2倍になるのは勘弁

952 :デフォルトの名無しさん:2014/02/28(金) 01:46:34.28
サロゲートペアや結合文字を考慮する必要はなく
1文字=固定長なので文字列処理に置いてはシンプルかつ高速です

953 :デフォルトの名無しさん:2014/02/28(金) 01:51:27.82
iostreamみたいな糞ライブラリを設計する奴が
頭が良いわけないだろう

954 :デフォルトの名無しさん:2014/02/28(金) 01:52:17.28
なんや急に
どないした
びっくりするやないか

955 :デフォルトの名無しさん:2014/02/28(金) 01:58:49.57
またiostreamに親を殺された人が一人

956 :デフォルトの名無しさん:2014/02/28(金) 02:02:18.74
正直内部表現はトレードオフでutf16がいい線いってる
あと、utf32にしたら結合文字を考慮する必要がないなんて、そんな訳がない。

957 :デフォルトの名無しさん:2014/02/28(金) 02:13:42.12
utf8&UCS4でおk

958 :デフォルトの名無しさん:2014/02/28(金) 02:19:47.67
どのようなトレードオフ結果でUTF-16がUTF-32より優れていたのか。
>>956の説明に期待

959 :デフォルトの名無しさん:2014/02/28(金) 02:24:40.14
>>952の皮肉が理解できない>>956はアスペ

960 :デフォルトの名無しさん:2014/02/28(金) 02:26:03.86
メモリが半分で済む
日本語なら大体1文字2byteで済むから文字数計算も楽ちん
icuの内部コードだしな

961 :デフォルトの名無しさん:2014/02/28(金) 02:27:50.42
>>949
参考までに教えて
std::exceptionをキャッチしてwhat()の内容を
メッセージボックルに表示したいんだがどう書けばいい?

962 :デフォルトの名無しさん:2014/02/28(金) 02:32:42.75
どのようなトレードオフ結果でASCIIがUTF-16より優れていたのか。
 ↓
メモリが半分で済む
英語なら大体1文字1byteで済むから文字数計算も楽ちん
多くのオプソで使用されているコードだしな

963 :デフォルトの名無しさん:2014/02/28(金) 02:33:34.32
>>959
皮肉なのか?ガチで言ってるように思えるけど

964 :デフォルトの名無しさん:2014/02/28(金) 02:36:13.47
日本語使いたいからasciiでは困る

965 :デフォルトの名無しさん:2014/02/28(金) 02:37:55.81
>>962
そして海外プロジェクトの言語パッチだけせこせこ書く下請けに成り下がる

966 : ◆QZaw55cn4c :2014/02/28(金) 02:38:41.21
>>903
>>914
http://codepad.org/PNO62GC8

967 :デフォルトの名無しさん:2014/02/28(金) 02:51:48.26
>>961
決め打ちでいいです
genericの意味分かってる?

968 :デフォルトの名無しさん:2014/02/28(金) 02:53:54.38
どのようなトレードオフ結果でSJISがUTF-16より優れていたのか。
 ↓
メモリが少なくてで済む
英文だと1文字1byteで済むから文字数計算も楽ちん
Winで使用されているコードだしな

969 :デフォルトの名無しさん:2014/02/28(金) 03:15:30.86
catch (const std::exception & ex)
{
#if defined(_UNICODE)
 int size = ::MultiByteToWideChar(932, MB_ERR_INVALID_CHARS, ex.what(), -1, NULL, 0);
 if (size != 0)
 {
  std::vector<wchar_t> message(size);
  ::MultiByteToWideChar(932, MB_ERR_INVALID_CHARS, ex.what(), -1, &message[0], size);
  ::MessageBox(NULL, &message[0], _T(""), 0);
 }
#else
 ::MessageBox(NULL, ex.what(), "", 0);
#endif
}

970 :デフォルトの名無しさん:2014/02/28(金) 03:17:00.69
MessageBoxAでいいじゃん

971 :デフォルトの名無しさん:2014/02/28(金) 03:19:46.86
次に「他のTCHAR文字列と併せて処理したいですただしCStringは使いたくない」
と来るに一票

972 :デフォルトの名無しさん:2014/02/28(金) 03:31:53.49
文字列ごときのメモリが4倍で何か問題あるか?
UTF-32なら途中で切れても多少は意味のある所で切れるから
UTF-16よりは遙かにマシ

973 :デフォルトの名無しさん:2014/02/28(金) 03:44:24.02
ジェネリック
それはお布施代をカットした安価な薬のこと

974 :デフォルトの名無しさん:2014/02/28(金) 05:37:29.29
地球上に存在するありとあらゆる言語に対応しようと思ったらUTF-32?

975 :デフォルトの名無しさん:2014/02/28(金) 06:31:22.92
>>974
地球上の言語が32種類しかないとでも思ってんの?
パソコンが対応してる言語だけでももっとあるぞ。

976 :デフォルトの名無しさん:2014/02/28(金) 06:50:35.77
↑↑ どうしようもない馬鹿

977 :デフォルトの名無しさん:2014/02/28(金) 06:52:26.19
>>974
別にエンコーディングの違いであって、どの言語に対応しているとかは
UTF-32,UTF-16,UTF-8のどれでも同じ。

978 :デフォルトの名無しさん:2014/02/28(金) 06:56:14.43
ありとあらゆる言語に対応したいなら
まずUnicode以外の独自研究が必要

979 :デフォルトの名無しさん:2014/02/28(金) 06:57:21.42
>>977
いや、だから例えばUTF-8使ったら8種類しか対応できないでしょ。
自分のパソコンだけなら8種類以上の言語を使いこなす人は稀だからUTF-8でもいいけど、
世界規模のWebサービスを展開しようと思ったらUTF-8では対応しきれない。

980 :デフォルトの名無しさん:2014/02/28(金) 06:57:26.07
>>972
> UTF-32なら途中で切れても多少は意味のある所で切れるから

タイ語とか無理

981 :デフォルトの名無しさん:2014/02/28(金) 06:59:22.96
ウェブで扱える言語って決まってる?
RFCかISOSIで散布されてない?

982 :デフォルトの名無しさん:2014/02/28(金) 07:18:31.38


983 :デフォルトの名無しさん:2014/02/28(金) 07:22:25.66
>>979←まじなの?

>>977がかわいそう

984 :デフォルトの名無しさん:2014/02/28(金) 07:26:19.72
>>981
ウェブとは何だ。
まずその定義をはっきりさせようか。

985 :デフォルトの名無しさん:2014/02/28(金) 07:29:36.58
>>984
言い方が悪かった
HTTPリクエストヘッダの、あくせぷとらんげーじに使用可能な言語だ

986 :デフォルトの名無しさん:2014/02/28(金) 07:40:58.70
>>979
ネタだよな?
utf-8とか、16、32は対応の言語数じゃなくてビット数。

utf-8は8ビット単位、つまり1バイトを複数(最大4バイト)組み合わせて1文字を表現する。
だから、utf-16は16ビット単位で、それだと足りない場合にサロゲートペアで2つ組み合わせる。
utf-32はそれ1つで表せる。といっても言語によっては、その1文字だけでは意味を成さないものもあるが。

987 :デフォルトの名無しさん:2014/02/28(金) 07:46:26.11
ネタにマジレスすんな

988 :デフォルトの名無しさん:2014/02/28(金) 07:47:07.17
>>985
散布されてるよ

989 :デフォルトの名無しさん:2014/02/28(金) 07:48:20.79
>>988
一覧のURL頼む

990 :デフォルトの名無しさん:2014/02/28(金) 07:58:44.13
次スレ

C++相談室 part111
http://toro.2ch.net/test/read.cgi/tech/1393539884/

991 :デフォルトの名無しさん:2014/02/28(金) 08:32:07.48
>RFCかISOSIで散布されてない?
RFC 2616ではIANAを見ろと書いてあるから
一覧はRFC・ISOSIのどちらも配布していない

992 :デフォルトの名無しさん:2014/02/28(金) 08:46:04.05
(1) #include "math.h" ではなく
(2) #include <math,h> が正しい?

しかし、VC++もgccも(1)でも問題なくビルドできる。

そして、
(1)では、gccのabs(double)はintを返してしまう。
(2)では、gccでもabs(double)はdoubleを返す。

しかし、#include "math.h" でエラーなり、警告が出ればいいのに。
これに対応した定義が残っているというのは昔の名残かねえ。

993 :デフォルトの名無しさん:2014/02/28(金) 09:31:40.49
> #include "math.h" ではなく
コンパイルが通る保証はありません

> #include <math,h>
float,double以外のint,longが使えるようになります
doubleを渡すとオーバーロード解決が曖昧でエラーになるのが正しい

#include <camath>
stdなまえ空間にabsを宣言。
math.hのものに加え、float,double版を追加

994 :デフォルトの名無しさん:2014/02/28(金) 10:41:03.24
間違えた。
#include <math,h> →#include <math.h>

>>992 の現象が出たのはmain()関数で

#include <stdlib.h>
#include "math.h"

としていたからだったorz。

gccではstdlib.hで定義されたabsが呼び出される。
"math.h"は無視された形だが、これをincludeすること自体は
文法的に間違いではない?

しかし、VC++2008では
#include <stdlib.h>
#include "math.h"

と並べると、後にincludeされるmath.h内のabsが呼び出される。
using namespace std; はあっても無くても関係ない。

どうでも良いことだけど、これ関係のトラブルで悩む人も出て
くるかもしれないので一応報告しておく。

995 :KUSO KOTE ◆unko./w.Osri :2014/02/28(金) 16:56:00.33
>>994
>"math.h"は無視された形だが、
無視されるはずがないと思うのだけれど…

>これをincludeすること自体は
>文法的に間違いではない?
正しい筈。
""で見つからなければ<>にフォールバックします。
ISO/IEC 14882:2011 16.2p3
math.h は正しいヘッダー名。
ISO/IEC 14882:2011 D.5p1

996 :KUSO KOTE ◆unko./w.Osri :2014/02/28(金) 17:15:57.78
こんな感じだった気がする。
stdlib.h
 →::にabs(int)を導入
cstdlib
 →std::にabs(int), abs(long), abs(long long)
math.h
 →::にfabs(double)
cmath
 →std::にabs(double), abs(float),fabs

#include <math.h>で::abs(double)を導入
してしまうことが規格に反しているかというと、
多分反してない。たぶん。

997 :デフォルトの名無しさん:2014/02/28(金) 17:21:45.61
次スレ
C++相談室 part111
http://toro.2ch.net/test/read.cgi/tech/1393539884/

998 :デフォルトの名無しさん:2014/02/28(金) 17:26:58.15
産めよ増やせよ

999 :デフォルトの名無しさん:2014/02/28(金) 17:29:12.68
梅のかほり

1000 :デフォルトの名無しさん:2014/02/28(金) 17:29:41.15
>>1000なら規格改定

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

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

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)