【初心者歓迎】C/C++室 Ver.98【環境依存OK】at TECH
【初心者歓迎】C/C++室 Ver.98【環境依存OK】 - 暇つぶし2ch2:デフォルトの名無しさん
16/05/30 18:54:50.39 DjBh2EsF.net
次スレが見あたらなかったので立てた
今北ばかりの俺に今日一日の内容を教えてくれ

3:デフォルトの名無しさん
16/05/30 18:57:21.00 Xl0N1v2s.net
【本日のあらすじ】
前スレ>>1000の決定により、バトルスレとして生まれ変わった。
以上。

4:デフォルトの名無しさん
16/05/30 18:59:44.28 DjBh2EsF.net
まじかよ
構わんが相手を罵倒するスレじゃなくてバトルするスレにしてくれよ

5:デフォルトの名無しさん
16/05/30 19:05:22.47 ixAozmxi.net
最近の即死判定はちょっとだけキツくなってるからとりあえずみんな何か書け

6:デフォルトの名無しさん
16/05/30 19:09:57.99 5KszwDfD.net
よーしパパ罵倒るっちゃうぞ
>996 :デフォルトの名無しさん :2016/05/30(月) 17:55:12.40 ID:hyGWFe6M
>>994
> 排他の話をしてて、Write と Modify の区別がつかないのは不味いだろ
> Modify = Read-Modify-Write
> ってわかってるよね?
けけけ
こいつこれ書いててなんかおかしいと思わなかったのかね

7:デフォルトの名無しさん
16/05/30 19:12:33.42 NdC8+XxG.net
>>6
ばとるの字が違う!

8:デフォルトの名無しさん
16/05/30 19:18:14.62 Xl0N1v2s.net
プログラマならほんの少しの誤字が何を引き起こすかわかってるよね?

9:デフォルトの名無しさん
16/05/30 19:22:57.80 JwqlJAnX.net
ほんと2ch特有これだから2chは

10:デフォルトの名無しさん
16/05/30 19:26:23.05 Xl0N1v2s.net
じゃあまず2chの定義から始めようか。

11:デフォルトの名無しさん
16/05/30 19:48:48.23 hyGWFe6M.net
>>6
おかしいところも指摘できないバカ乙
煽るとか 100年早いわ w

12:デフォルトの名無しさん
16/05/30 20:15:27.32 oTOIpsxJ.net
規格の1.10に書かれたmodifyは前スレ994の言う通り単に書き換え
の意味で使われているのに話をすり替えているからおかしいのであって、
>>6の引用文自体はおかしいよう見えないな
まあ>>6はModifyが等式の両辺に現れたことを言っているのかも知れない

13:デフォルトの名無しさん
16/05/30 20:37:11.51 0XG2biZ7.net
Modify = Read-Modify-Write
C言語的に解釈すると ReadからModifyとWriteを引いてModifyに代入
数学的に解釈すると Modify = ( Read-Write )/2
どっちも意味が分からない

14:デフォルトの名無しさん
16/05/30 20:42:10.41 JaLXIj0G.net
Read-Modify-Write すら理解してない奴がいるのか...
URLリンク(en.m.wikipedia.org)

15:デフォルトの名無しさん
16/05/30 21:08:09.93 NdC8+XxG.net
>>13
/2はどこから出てきたんだよ
>>14
それはいいとして、modify単体でread-modify-writeのことを指すなんてルールがどこから出てきたんだろうね

16:デフォルトの名無しさん
16/05/30 21:09:40.48 oTOIpsxJ.net
恥ずかしさに耐えきれずもっと馬鹿なレスでごまかそうと
IPアドレス変えて書き込んだ>>13の心情をお察しください
そして15のオツムの弱さに脱帽

17:デフォルトの名無しさん
16/05/30 21:20:51.93 NdC8+XxG.net
なんで煽られたのかわかんねぇわ

18:デフォルトの名無しさん
16/05/30 21:21:58.06 kauG4wqb.net
消費税引き上げ先送りも決まり,日銀とECBがしっかり資金供給を拡大してくるのでFRBの利上げは多分成功する
基調はリスクオンの株式暴騰、金暴落だね
今度の黒田砲は緩慢に効いてくる
海馬がくる,海馬がくる

19:デフォルトの名無しさん
16/05/30 21:56:31.13 UwS3YYB3.net
煽り抜きにこのスレバカとアスペしかいないわ
ほんとどこの専門板もおわっとる

20:デフォルトの名無しさん
16/05/30 22:07:56.43 5KszwDfD.net
>>15
>modify単体でread-modify-writeのことを指すなんてルールがどこから出てきたんだろうね
どこからって(笑)hyGWFe6Mが唯一の源泉だよ(笑)

21:デフォルトの名無しさん
16/05/30 22:12:38.75 NdC8+XxG.net
>>19
おう、お前以外全員バカだから安心しろ

22:デフォルトの名無しさん
16/05/30 22:16:12.33 5KszwDfD.net
>>19
お前のレスは煽り成分100%

23:デフォルトの名無しさん
16/05/30 22:23:45.24 JaLXIj0G.net
>>15
> それはいいとして、modify単体でread-modify-writeのことを指すなんてルールがどこから出てきたんだろうね <


24:br> スレッド間の排他制御の話でそれ以外の解釈あるなら教えてくれよ >>20 理解できないなら黙ってろよ



25:デフォルトの名無しさん
16/05/30 22:26:01.59 UwS3YYB3.net
>>21
このスレだとそれ皮肉にもならないでその通りだわ安心

26:デフォルトの名無しさん
16/05/30 22:29:27.27 NdC8+XxG.net
>>23
とりあえず前スレ読んできたら?

27:デフォルトの名無しさん
16/05/30 22:38:58.52 5KszwDfD.net
>>23
>スレッド間の排他制御の話でそれ以外の解釈あるなら
本気でそう思ってるなら無知すぎて話にならないから
最低限の知識を付けるまではマルチスレッディングの話には口挟まないほうがいいよ

28:デフォルトの名無しさん
16/05/30 22:44:06.38 JaLXIj0G.net
>>25-26
説明できないと言うことは理解したよ w

29:デフォルトの名無しさん
16/05/30 22:50:27.02 NdC8+XxG.net
>>27
前スレ読んでて言ってるのか。
残念すぎる

30:デフォルトの名無しさん
16/05/30 22:51:31.33 5KszwDfD.net
説明するもなにもどんな文脈であっても
modify=read-modify-writeなんて滅茶苦茶な用法はないからw

31:デフォルトの名無しさん
16/05/30 22:58:23.23 5KszwDfD.net
スレッド(割り込みも考えれば実行コンテキストとか呼んだほうがいいと思うが)
間の排他でmodifyといえばread-modify-writeを指すに決まってると思い込んでる奴は
スピンロックの色々な形態を勉強することだな

32:デフォルトの名無しさん
16/05/30 22:59:36.15 NaQmKghS.net
>>27
read modify writeのmodifyは変更の意味でとってもおかしくないだろ
それに対して規格にあった、constはmodifyしようとすると未定義動作になるって言う文は君の解釈だとおかしいだろ

33:デフォルトの名無しさん
16/05/30 23:23:55.74 oTOIpsxJ.net
ちなみに前スレ919は(現在有効な版とされる)C++規格ではない

34:デフォルトの名無しさん
16/05/30 23:45:30.42 NaQmKghS.net
c++11のドラフトからとったんだけど変わってんの?
c++14のドラフトでも一緒だったし

35:デフォルトの名無しさん
16/05/31 06:43:55.07 HjYDbXLZ.net
>>30
> 排他でmodifyといえばread-modify-writeを指すに決まってると思い込んでる奴は
だから他にあると言うならそれ書けよ
>>31
const ?
Read-Modify-Write の Modify は規格の modify と違うぞ

36:デフォルトの名無しさん
16/05/31 06:45:07.72 HjYDbXLZ.net
>>28
前スレ読めとしか書けない残念な人乙 w
せめてレス番ぐらい示せ

37:デフォルトの名無しさん
16/05/31 07:14:19.47 1eCqiRRJ.net
そのうち大文字と小文字が違うとか言い出す

38:デフォルトの名無しさん
16/05/31 07:21:27.97 9B6piCSy.net
>>33
内用に大差あるとかじゃなくて、規格じゃないものを規格であるかのようにして貼るな
段落もずれてるし。それにC++17のドラフトを見れば変更の有無は想像できるだろう
ISO/IEC 14882#2014 1.10段落6
Two expression evaluations conflict if one of them modifies a memory location (1.7) and
the other one accesses or modifies the same memory location.
1.10段落23
The execution of a program contains a data race if it contains two potentially concurrent conflicting actions,
at least one of which is not atomic, and neither happens before the other, except for the special case for signal handlers described below.
Any such data race results in undefined behavior.

39:デフォルトの名無しさん
16/05/31 07:49:16.47 HjYDbXLZ.net
>>36
>>27

40:デフォルトの名無しさん
16/05/31 08:02:56.55 ayjBr20G.net
なんだこれ
くっそどうでもいい指摘する奴と、煽るだけの奴
どっちも何を主張したいのかわかんね

41:デフォルトの名無しさん
16/05/31 08:16:32.44 ayjBr20G.net
>>38
お前は前スレの ID:hyGWFe6M のように規格に書かれてるmodifyがread-modify-writeの事を指していてreadとwriteを別スレッドから同じ場所に同時に行うことではデータ競合を起こさないと主張してるって事でいいの?
他の人からそう思われてるよ?

42:デフォルトの名無しさん
16/05/31 08:31:35.19 lsPrur1T.net
>>35
前スレは983あたりでおかしくなった
write+readの件についてwriteが含まれる場合の規定を919が示したら
983が何故か「それはwriteでなくread-modify-writeだから関係無い」
と宣った

43:デフォルトの名無しさん
16/05/31 08:34:46.62 s1Yf7R7M.net
今日もまだまだread-modify-write談義、続くよ!

44:デフォルトの名無しさん
16/05/31 09:17:50.74 TRYwrF1a.net
まとめ
「bool型変数に対し2つのスレッドが参照を持ち、一方が読み込み、他方が書き込みのみを行う場合はmutexって必要なの?」
ってのが前909で
「未定義動作になるから危険。
コンパイラによってはwhileの前に一度だけ読み込むコードになったり、
そうじゃなくてもCPUに依ってはスレッドが別コアで実行されたらキャッシュだけ読みに行って嵌ったりする。」
ってのが前910。尚前909には理解できなかった模様
それに対しマルチスレッドもアセンブリも知らないおっさん達がやれ粒度がどうたらやれ更新は書き込みを含むやら含まないやら言い出してさあ大変
今ここ。

45:デフォルトの名無しさん
16/05/31 09:29:34.19 ayjBr20G.net
>>43
最後違う
前スレの ID:hyGWFe6M はmodifyはread-modify-writeだからreadとwriteは競合しないという主張

46:デフォルトの名無しさん
16/05/31 09:32:11.51 TRYwrF1a.net
>>44
thx

47:デフォルトの名無しさん
16/05/31 10:02:50.44 TRYwrF1a.net
俺はread-modify-writeってアセンブリレベルだと
mov eax, [rdi] ; read
@@: mov ecx, eax
dosomething ecx ; modify; e.g. inc ecx
lock cmpxchg [rdi], ecx ; write by CAS. if CAS failed, read at [rdi] to eax
jne @b ; goto @@ if CAS failed
又はよりシンプルに
mov eax, [rdi] ; read
dosomething eax ; modify
mov [rdi], eax ; write
こういう具合に分類して理解してる。
んで、複数のスレッドが同時にアクセスしうるメモリ上の位置が存在する場合、
一箇所でもその位置を書き換えるスレッドが存在するならatomicにしなければならないって思ってる。
合ってる?
# 昔はvolatileを使ったなぁ

48:デフォルトの名無しさん
16/05/31 11:22:09.64 6aoAynfW.net
>>43
最初もちげえよカス 理解してるしコンパイラによってCPUに依ってなんてケースは聞いてないんだよ環境依存でこの環境で大丈夫か?って聞いてんだよ
前スレのwhileの最適化とか意味不なこと言ってる奴いたし聞いてもない環境持ち出してくる池沼だらけだわARMとかどうでもいいんだよ
第一俺を巻き込むな死ね

49:デフォルトの名無しさん
16/05/31 11:49:15.80 TRYwrF1a.net
>>47
前スレ822によると環境はwin32なんだろ?
その条件なら、x86以外にもMIPSやPPCを考慮しなきゃならんのは当然じゃないか。何言ってんだ?

50:デフォルトの名無しさん
16/05/31 12:16:36.80 6aoAynfW.net
>>48
MSVC使ってんだしx86ってわかるだろ 特殊な環境で使うならわざわざいうわ死ね
使う環境一つなんだから文脈から読み取れるわアスペルガー野郎 もはや揚げ足とりレベルのこと言えんのな
ほんとそのうち大文字と小文字が違うとか言い出すな マジ中身のないレスで俺に安価つけんな死ね

51:デフォルトの名無しさん
16/05/31 12:22:32.27 TRYwrF1a.net
>>49
死ね(中身の無い言葉)

52:デフォルトの名無しさん
16/05/31 12:25:19.16 6aoAynfW.net
>>50
はい死ね

53:デフォルトの名無しさん
16/05/31 12:53:44.95 t+3gE39Z.net
>>40
> readとwriteを別スレッドから同じ場所に同時に行うことではデータ競合を起こさないと主張してる
それで合ってる
因みに競合を起こさない
って言うのは元々メモリー上に存在した値か write した値以外の値を read しないと言う意味ね

54:デフォルトの名無しさん
16/05/31 13:19:27.09 NrsuFr7e.net
win32ならMIPSやPPCを考慮しなきゃならんのは当然(キリッ)

55:デフォルトの名無しさん
16/05/31 13:30:49.97 rtPt6hUE.net
あのぅ…
ここは、しっ、初心者歓迎ではないのですか(スレタイにある)?
みんな怒っていて、怖いのですが…

56:デフォルトの名無しさん
16/05/31 13:43:02.38 TF+4ZOhf.net
>>54
大歓迎だよ(怖くないとは言っていない)

57:デフォルトの名無しさん
16/05/31 13:51:29.75 aLUaFZpW.net
MSVCはARMをtargetに出来るんだけど…

58:デフォルトの名無しさん
16/05/31 14:00:39.36 6aoAynfW.net
>>56
アスペ死ね

59:デフォルトの名無しさん
16/05/31 14:11:16.38 6aoAynfW.net
>>54
マジで前スレで誰かが聞いて挙げられてたサイト行ったほうがいいわな あれリストかしとけ
もうやりたかったこと完成したしもう俺をこのクソの投げ合いに巻き込むなや死ね

60:デフォルトの名無しさん
16/05/31 14:32:26.57 MgBy31H8.net
レスするごとに死ねって5回も言い続けてるお前が一番怖いんだよなぁ

61:デフォルトの名無しさん
16/05/31 15:06:03.80 aLUaFZpW.net
メモリバリアが有るかどうかはコンパイラの最適化に影響するからよい子の皆はCPUが対応してるからatomic使わなくてもいいなんて勘違いしちゃだめだぞ

62:デフォルトの名無しさん
16/05/31 17:06:09.26 s6vXNmRK.net
まあどうでもいいじゃん。
そんなことよりクラス名はラクダスタイルが良いのか、stdスタイルが良いのか。
そっちの方が大問題ジャン?

63:デフォルトの名無しさん
16/05/31 17:11:10.22 6E/2AJ7e.net
喧嘩相手の初心者歓迎という事ですね。

64:デフォルトの名無しさん
16/05/31 17:38:48.35 +L4oE1jc.net
初心者歓迎(歓迎するとは言ってない)

65:デフォルトの名無しさん
16/05/31 17:49:50.80 rtPt6hUE.net
通常『歓迎』と書けば、『歓迎する』となる。
ただ、こちらが想定する歓迎の仕方と違うと云う事ですね

66:デフォルトの名無しさん
16/05/31 17:55:20.10 aLUaFZpW.net
大体は初心者らしくしてれば喧嘩にならないようなケースだけどな
知ったかぶりで喧嘩腰な ID:hyGWFe6M と
質問者のくせに偉そうで死ねしかいえないやつと

67:デフォルトの名無しさん
16/05/31 18:00:19.37 s6vXNmRK.net
ラクダ派にも、ヒトコブラクダ派とフタコブラクダ派がいるしね。

68:デフォルトの名無しさん
16/05/31 18:07:43.83 TRYwrF1a.net
蛇に一票!

69:デフォルトの名無しさん
16/05/31 19:26:56.10 6aoAynfW.net
>>65
はいアスペ死ね

70:デフォルトの名無しさん
16/05/31 19:53:06.99 Ln0CmcAU.net
>>61
言語設計者は大文字始まりをすすめている模様
URLリンク(www.libjingu.jp)
>型名には先頭を大文字にした名前を使用してください(中略)こうすることで、標準の型と見分けることができます。

71:デフォルトの名無しさん
16/05/31 19:54:19.97 NrsuFr7e.net
6aoAynfW=hyGWFe6M
誰だよこんなクソに餌やりしたのは

72:デフォルトの名無しさん
16/05/31 19:57:53.79 NrsuFr7e.net
ああもしかしたら6aoAynfW=前スレuvUIKndNなのか
まあどっちでも良いけどね、クソはクソなのであってアイデンティティなんかないから

73:デフォルトの名無しさん
16/05/31 20:15:26.25 lAVDRKqS.net
>>71
スレすらまともに読めてなく間違いに気づいてもう一回レスしたのねうけるwwwwどっちでも良いけどレスはしちゃうよねwwww

74:デフォルトの名無しさん
16/05/31 20:30:14.36 9B6piCSy.net
もう何が論点なのかわからなくなってしまったが、
>>47への回答はこれでいいか?
URLリンク(ideone.com)

75:デフォルトの名無しさん
16/05/31 20:48:05.96 NrsuFr7e.net
新しいウンコ野郎爆誕か?
global_stop_unko4にvolatileさえつけないで最適化した場合は全然別の問題だから

76:デフォルトの名無しさん
16/05/31 20:48:21.37 9qfIx641.net
>>73
→OK

77:デフォルトの名無しさん
16/05/31 20:52:16.30 9B6piCSy.net
>>17
いちおう訊いておくが、理由はわかったよな?
『/2はどこから出てきたんだよ』

78:デフォルトの名無しさん
16/05/31 20:54:17.77 NrsuFr7e.net
>>75
OKじゃねーだろ前スレのウンコ質問者だってflagにはvolatile付けるくらいの知能はあった

79:デフォルトの名無しさん
16/05/31 20:59:44.14 9B6piCSy.net
>>74
>全然別の問題だから
はて、前スレ953は『atomicないとどういうバグがなぜ発生しうるのか?結局不要なのか?の結論がしりたいだけ』
だったから、意図した動作をしないこともあるという例を示したまでだが
別の問題かどうかが関係有るのか?

80:デフォルトの名無しさん
16/05/31 21:01:50.32 9qfIx641.net
>>77
うーんこのスレだけじゃなくコードの意図もまともに読めないガイジ

81:デフォルトの名無しさん
16/05/31 21:05:26.25 NrsuFr7e.net
>>78
OK
>>73の意図について俺が勘違いしてたスマン
このケースではstd::atomicもミューテックスも必要ないよね
volatileでさえあれば

82:デフォルトの名無しさん
16/05/31 21:25:42.65 lAVDRKqS.net
>>73
ありがとマジ有能
てか>>74NrsuFr7eこのレベルのアスペ池沼にクソとか言われてたんだな
こういう奴が自分の知能がやばいのを棚に上げてうんこ野郎爆誕とか言いながら意味不なこと言い続けるんだろうなマジで死んでくれ

83:デフォルトの名無しさん
16/05/31 21:33:39.77 NrsuFr7e.net
>>81
お前本当にどうしようもないクソ野郎だな

84:デフォルトの名無しさん
16/05/31 21:36:08.04 lAVDRKqS.net
>>82
はいウンコ野郎爆誕

85:デフォルトの名無しさん
16/05/31 21:43:21.91 NrsuFr7e.net
まあstd::atomicが必要かどうかにつて真摯にレスしてくれてた人の言い分を少しも理解しないようなウンコとバトルしても仕方ない

86:デフォルトの名無しさん
16/05/31 21:43:55.38 TRYwrF1a.net
>>82
>>82

87:デフォルトの名無しさん
16/05/31 21:53:23.37 AshcyYxn.net
>>78
> はて、前スレ953は『atomicないとどういうバグがなぜ発生しうるのか?結局不要なのか?の結論がしりたいだけ』
もう少し前からレスを読んだ方がいい
(前スレ>>)904 のコードには volatile が付いてるから volatile なくして動かねー
って言われても困惑するだけ

88:デフォルトの名無しさん
16/05/31 22:01:34.75 wkt7iDyQ.net
>>80
Visual Studio 2015ではコンパイラスイッチによってvolatileの解釈が変わる
という指摘が前スレであったからこのケースがどのケースか分からないけど
スイッチ次第で volatile で良いとも悪いとも言える

89:デフォルトの名無しさん
16/05/31 22:01:41.31 lAVDRKqS.net
>>84
まぁstd::atomicの人もおまえの味方にはなりたくないと思うぞつて てか捨て台詞はもういいの?w
このスレこういう池沼がいるからバトルがずっと続くんだろうなマジ死ねつてつて

90:デフォルトの名無しさん
16/05/31 22:36:56.73 9B6piCSy.net
>>86
読んでなかったわすまん。
ただミューテックス有りではvolatileが無いのに動いてるからvolatileは本質じゃないと考えた。
コンパイラーはフラグとミューテックスの関係を知らないから。
URLリンク(ideone.com)
こういう比較にするべきだったか
(書き込み時に排他してないのは作法としてNGだが目をつぶってくれ)

91:デフォルトの名無しさん
16/06/01 00:06:13.33 788Vt+6F.net
>>76
ああ、ハイフンをマイナスとして解釈してたのな。
両辺からmodify引いたら 0 = read-writeになるやんと解釈してたわ。心配してくれてありがとな

92:デフォルトの名無しさん
16/06/01 06:37:56.90 RDQRhO1c.net
どうでもいいけどスペル間違ってるよ。

93:デフォルトの名無しさん
16/06/01 06:40:17.12 YMSD+2lu.net
>>87
そんなオ


94:プションあったっけ? オプション名教えて



95:デフォルトの名無しさん
16/06/01 06:51:57.83 YMSD+2lu.net
>>89
> コンパイラーはフラグとミューテックスの関係を知らないから。
だから最適化できないだけじゃね?

96:デフォルトの名無しさん
16/06/01 06:57:50.70 RDQRhO1c.net
そこをググッと最適化するのがテンプレートマジックでしょうが!!!

97:デフォルトの名無しさん
16/06/01 08:05:07.75 S5lUInLS.net
ミューテックスAPIの様なコンパイラが知らない外部関数呼んだ後は
volatileついてなくてもグローバルな変数値が変わってないと解釈するわけにはいかないからだよ
ミューテックスの代わりに何か適応なAPIを挟むとやっぱり動くよ
排他の問題じゃない

98:デフォルトの名無しさん
16/06/01 09:01:13.82 p6LgU525.net
そういえばそうだったな

99:デフォルトの名無しさん
16/06/01 15:10:35.96 e5VZGuDW.net
もっと熱いバトルしようぜ!

100:デフォルトの名無しさん
16/06/01 16:37:35.85 RDQRhO1c.net
【デュエルの作法】
・まず名乗りましょう。(例:C++標準化委員の>>48です等)
・名指しします。(例:猿頭の>>47に異議を申す等)
・晴らしたい恨みについて申告します。(例:愛するPPCをのけ者にした!等)
・決闘を申し込みます。(例:よって貴殿に決闘を申し込む等)
相手が受理したらデュエルの始まりです。
さあ徹底的に叩きのめしましょう。

101:デフォルトの名無しさん
16/06/01 18:48:15.42 jEAqldaZ.net
俺「volatileすげー便利」
メイヤー「マルチスレッドで使用するためのものではない」
ビョンビョン「マルチスレッドで使用するためのものではない」
何故なんだぜ

102:デフォルトの名無しさん
16/06/01 19:38:22.75 mHGwq62w.net
volatileを付けないとどうなるのだ?
外から書き換えられても、そのスレッドではわからくなるんだっけ?

103:デフォルトの名無しさん
16/06/01 19:42:04.99 LCUCZSDK.net
>>100
最適化で読み書き省略しちゃう

104:デフォルトの名無しさん
16/06/01 19:42:32.91 S5lUInLS.net
別に便利なもんじゃないだろ
値が変わってないとコンパイラが仮定するのを阻止するだけ
ただし
・変数がバスレベルでアトミック
・書き込みの競合がない
みたいな場合はスレッド間のシグナリングに使える

105:デフォルトの名無しさん
16/06/01 20:33:27.15 mHGwq62w.net
>>101
とん そだったね。普段使ってないもんで。
確かにコンパイラに教えないとまずいね。

106:デフォルトの名無しさん
16/06/01 21:25:51.49 788Vt+6F.net
>>52
今更なんだけど今気づいたから書くけど、そいつは特定環境じゃなく規格の話でそう主張してたんだぞ?

107:デフォルトの名無しさん
16/06/01 21:41:23.45 y1My1Ac/.net
>>104
>>52がレスを返してる先の>>40を読めばわかることを気づいたと言われても
蛇足の駄レスはいらないぞ

108:デフォルトの名無しさん
16/06/01 21:44:35.28 mdokjnd7.net
初心者スレなので初心者にもわかるようにガンダムに例えてもらえませんか

109:デフォルトの名無しさん
16/06/01 21:48:34.49 y1My1Ac/.net
>>106
「俺が規格だ」

110:デフォルトの名無しさん
16/06/01 22:00:21.58 788Vt+6F.net
>>105
本人は理解してるのか気になってな

111:デフォルトの名無しさん
16/06/02 23:26:30.13 UwVCGc3x.net
オーバライドするときに必ず基底クラスのメソッドを呼ばないといけないように又は勝手に基底クラスのメソッドを呼ぶようにってできませんか?

112:デフォルトの名無しさん
16/06/02 23:54:13.37 UTqywkRW.net
出来ない
baseクラスの仮装関数はprotectedにして非仮装関数を外部に公開する関数にして必須の実装は非仮装関数の方に書けばいいよ

113:デフォルトの名無しさん
16/06/03 01:16:16.13 TgksTSmw.net
>>110がいってることの詳細はC++ NVIでぐぐれや

114:デフォルトの名無しさん
16/06/03 04:17:33.99 hWYSNnly.net
URLリンク(fa11enprince.hatenablog.com)
のBmi.cppの8行目の
:name_(name), height_(height), weight_(weight), bmi_(0.0)
は何ですか?

115:デフォルトの名無しさん
16/06/03 06:14:38.86 o7VJVlqj.net
>>112
俺の環境で Bmi.cpp を見ることができないため確実ではないが、
記法からクラスのメンバ変数に初期値を設定してるのだと思われる。
「メンバイニシャライザ」「初期化リスト」で調べると分かる。

116:デフォルトの名無しさん
16/06/03 09:26:04.50 k46LxwfN.net
>>109
正にそんなあなたのためのNVI!

117:デフォルトの名無しさん
16/06/03 14:27:46.85 0PuduGQy.net
最近では流行に乗って
:_status{false},_readfname{fname.c_str()},_line{0},_loc{0},_start{0}
などと書いてますw

118:デフォルトの名無しさん
16/06/03 18:50:44.93 lHHofMTX.net
>>113
初期化リストはどう考えても無関係なのだが

119:デフォルトの名無しさん
16/06/03 19:55:12.89 svg3/C15.net
どう考えても無関係と思う人は救いようが無い(かもしれない)

120:デフォルトの名無しさん
16/06/03 20:07:11.55 lHHofMTX.net
どうした
今日はやけに弱気じゃないか

121:デフォルトの名無しさん
16/06/03 21:36:26.41 RDs2xD0L.net
C++相手に強気にはなれない。どうせ一度でちゃんと動くわけないんだから

122:憲法に守られる在日スパイ・創価・ヤクザ
16/06/04 09:01:43.15 SVOilD6U.net
皇室の危機に気づいていますか? 
日本は、2,000年以上続く皇室のおかげで、世界最古の国として、
ギネス認定されているそうです。
自民党は憲法の改正で、日本の国家元首=天皇陛下と条文に明記することで、
天皇制廃止をもくろむ帰化人スパイ勢力(政党、憲法学者、弁護士・言論人等)から、
皇室を守ろうとしています。
※イギリス、オランダ、ノルウェー、デンマーク、スペインなどは国王を国家元首と
 憲法上に定めている。(日本同様、政治の実権は有さない。)
※日本で支配的な「護憲派」憲法学者の多くは反天皇。憲法から天皇の条項ごと削除したい
 人たちなので、本来は改憲派である。(「象徴天皇制度と日本の来歴」坂本多加雄著より)
公明党「天皇は日本の国家元首ではない」 
スレリンク(news板)
自民党・西田昌司
「橋下さん(おおさか維新)の憲法改正は、国柄を破壊することが目的」(自民とは真逆)
URLリンク(www.youtube.com)
日本共産党 「目標としては天皇制をなくす立場に立つ」「天皇制のない民主共和制をめざす」
URLリンク(www.jcp.or.jp)
反天皇、反皇室で共謀する民主党(現民進党)と田原総一朗
URLリンク(blog.liv)<) (4:40~)
※ただし、自民単独(カルト公明党抜き)で2/3議席以上与えない限り、
野党と公明党に骨抜きにされる。  ↓
自民・船田氏…「野党・公明党のみなさんと協議し、衆参両院の3分の2をこえる人が
賛成してくれなければ発議はできない。だからこれから大いなる妥協が始まる。
自民の憲法草案は、 ズタズタになると思って結構だ」
スレリンク(seijinewsplus板)

123:デフォルトの名無しさん
16/06/04 21:46:05.05 2S+df7BL.net
void Func(配列ans)
の中で配列ansのサイズと値が計算されるというものを作りたいのですがどうすればいいですか?
要するに配列の参照渡しを動的?にしたいのですが
void Func(double (&ans)[2])とかならできるのですが、サイズは処理中に決まるので困ってます

124:片山博文MZ ◆T6xkBnTXz7B0
16/06/04 21:49:20.33 9azu721e.net
>>121
テンプレート引数でサイズを指定する。

125:デフォルトの名無しさん
16/06/04 21:52:48.35 iAbUPzK8.net
↑文章を読まずに単語レベルで反応するアスペ

126:デフォルトの名無しさん
16/06/04 21:56:04.92 X4oL/Z4d.net
>>121
std::vector

127:デフォルトの名無しさん
16/06/04 21:56:55.80 ZMmgB4OS.net
本当の配列ならそうするのが正解
でも動的ってのとは違う気がする
動的配列ならvector使えとしか

128:片山博文MZ ◆T6xkBnTXz7B0
16/06/04 21:57:27.80 9azu721e.net
>>121
サイズが処理中に決まり、その値が予測できなければサイズを渡すしかない。
予測できるなら場合分けでテンプレート。

129:デフォルトの名無しさん
16/06/04 21:59:01.46 fK/l9/WM.net
>>121
vector使う。
動的にサイズが変わるものに対して、いわゆる「配列」を使うのは適切とは思えないし、普通は出来ない。

130:片山博文MZ ◆T6xkBnTXz7B0
16/06/04 22:00:49.89 9azu721e.net
>>122>>126を撤回します。

131:デフォルトの名無しさん
16/06/04 22:01:33.72 iAbUPzK8.net
>>127
>普通は出来ない
ほうほう、それは驚きですな

132:デフォルトの名無しさん
16/06/04 22:03:48.74 iAbUPzK8.net
なぜ>>128>>126を撤回する必要が有ったのか謎だ
おかしな内容ではないと思うのだが

133:デフォルトの名無しさん
16/06/04 22:06:35.17 fK/l9/WM.net
>>129
言葉尻を取られた…
サイズ管理無しに、>>121の書いてあるようなことは出来ないって事だよ。

134:デフォルトの名無しさん
16/06/04 22:14:28.31 X4oL/Z4d.net
煽るか重箱のすみをつつくような事しかしない奴だから無視していいと思う

135:デフォルトの名無しさん
16/06/04 22:17:24.13 2S+df7BL.net
皆様ありがとです
ですがdll化してC#から呼びたいのでvectorは使えないと勝手に思ってたのですができますか?

136:デフォルトの名無しさん
16/06/04 22:20:32.61 nEY+89/x.net
dll のインターフェースはポインタとサイズ(個数)を引数に取るのが王道なんじゃねーの

137:デフォルトの名無しさん
16/06/04 22:24:34.18 iAbUPzK8.net
↑アスペ

138:デフォルトの名無しさん
16/06/04 22:35:24.45 Ux1fTD3c.net
>>133
> ですがdll化してC#から呼びたい
なぜそれを先に言わんのか

139:デフォルトの名無しさん
16/06/04 22:48:52.52 2S+df7BL.net
>>136
申し訳ございません

140:デフォルトの名無しさん
16/06/04 23:09:18.05 RoeN3q3R.net
>>133
C#から直接C++のクラスを扱うことは出来ないですが
インスタンスのポインタを受け渡すことは出来る筈

141:デフォルトの名無しさん
16/06/04 23:16:18.52 iAbUPzK8.net
>>138
>インスタンスのポインタを受け渡すことは出来る
へー、kwsk

142:デフォルトの名無しさん
16/06/05 03:45:05.75 Mv8L2a4e.net
C#って美味しいの?

143:デフォルトの名無しさん
16/06/05 06:05:45.79 MTgm06wQ.net
C++じゃないと実現できないプログラムならC++
それ以外ならC#の方が美味しい
初心者がC++って言う場合訳ありだと思う
大抵の場合C#で十分だし恩恵も多い

144:デフォルトの名無しさん
16/06/05 10:43:06.18 8WdagiWY.net
今では殆どの乗用自動車はATだ。だからMT免許なんて要らないと思うか。社用車を運転せねばならず、且つそれがMTだった時の為にやはりMT免許を取っておくべきなのだ。

145:デフォルトの名無しさん
16/06/05 11:18:57.28 LZ4TgvNf.net
>MT免許なんて要らないと思うか
要らないな
少なくとも万人に「MT免許を取っておくべき」と宣うのはアホの所業

146:デフォルトの名無しさん
16/06/05 12:54:32.38 Mv8L2a4e.net
簡単ならC#ってのやってみようかなぁ

147:デフォルトの名無しさん
16/06/05 14:40:26.26 cduS1d4/.net
いくつか質問いいですか
・unique_ptrはデフォルトのデリータ使うなら(時間的・空間的いずれも)オーバーヘッドがないって本当?
・shared_ptrはカスタムデリータ使う使わないにかかわらず
 アドレス+参照カウント以上の空間的オーバーヘッドがある?
・shared_ptrは保持されるポインタ以外に、カスタムデリータ用の
 メモリを動的確保することがある?
・unique_ptrの右辺値参照を取るコンストラクタにはアロケータを
 指定するバリエーションがない。
 カスタムデリータ用のメモリを動的確保する場合、この領域は
 デフォルトのヒープから取られてしまう?

148:デフォルトの名無しさん
16/06/05 15:13:25.22 LZ4TgvNf.net
>shared_ptrはカスタムデリータ使う使わないにかかわらず
> アドレス+参照カウント以上の空間的オーバーヘッドがある?
無かったらオカルト

149:デフォルトの名無しさん
16/06/05 15:21:54.59 1I3s8L22.net
>>145
実装にも依ると思われ
君の環境は何?

150:デフォルトの名無しさん
16/06/05 16:00:05.50 HUKeyAdj.net
>>145
> ・unique_ptrはデフォルトのデリータ使うなら(時間的・空間的いずれも)オーバーヘッドがないって本当?
オーバーヘッドを強いるような規定は無い。実際にそうなってるかどうかは実装を確認すべし。
> ・shared_ptrはカスタムデリータ使う使わないにかかわらず
>  アドレス+参照カウント以上の空間的オーバーヘッドがある?
ある。 weak_ptr 実装のために必要。
> ・shared_ptrは保持されるポインタ以外に、カスタムデリータ用の
>  メモリを動的確保することがある?
shared_ptr<T> 自体やそれが指す T 型のオブジェクトとは異なる寿命を持ち参照カウントや
カスタムデリータを保持する制御用オブジェクトを動的確保する必要がある。
make_shared<T>() で T 型のオブジェクトとまとめることで削れるようになってて、たいていの実装では
実際に削ってくれるはず。
> ・unique_ptrの右辺値参照を取るコンストラクタにはアロケータを
>  指定するバリエーションがない。
>  カスタムデリータ用のメモリを動的確保する場合、この領域は
>  デフォルトのヒープから取られてしまう?
カスタムデリータ用のメモリを動的確保する必要は無いし、コンストラクタに noexcept が付いてるから
基本的にはできない。

151:デフォルトの名無しさん
16/06/05 18:06:35.53 cduS1d4/.net
皆さんありがとうございます
>>148
> カスタムデリータ用のメモリを動的確保する必要は無いし、コンストラクタに noexcept が付いてるから
> 基本的にはできない。
すみませんこれはたぶん質問の書き方が悪かったと思うのですが
(unique_ptrでなく)shared_ptrのコンストラクタで
unique_ptr &&を取るコンストラクタが
template< class Y, class Deleter >
shared_ptr( std::unique_ptr<Y,Deleter>&& r );
しか無く、アロケータを指定できないみたいなのですが
これを使った場合shared_ptrの制御用オブジェクトのメモリは
デフォルトのヒープから動的確保されてしまうのですか?
unique_ptrからムーブするときに
shared_ptrが制御用オブジェクトを確保するための
アロケータを指定する手段はありますか?

152:デフォルトの名無しさん
16/06/05 18:09:33.03 LZ4TgvNf.net
>>148
>コンストラクタに noexcept が付いてるから
>基本的にはできない
ん?コンテナーか何かと勘違いしてないか
ISO/IEC 14882:2014 20.8.1段落4
『A deleter’s state need never be copied, only moved or swapped as ownership is transferred.』
デリーターはコピーが禁止されているからムーブするしかないと思うのだが

153:デフォルトの名無しさん
16/06/05 18:17:12.18 LZ4TgvNf.net
間違えた
誤 コピーが禁止されているから
正 デリーターの状態も移す必要があってnoexceptなんだから
20.8.1段落4
『if the pre-transfer u.d maintained state, such state has been transferred to u2.d』

154:デフォルトの名無しさん
16/06/05 18:31:03.49 D97p9ZEl.net
>>149
そりゃ書き方悪かったね。
アロケーター指定したいならunique_ptrをrelease()してallocate_sharedに渡せば?

155:デフォルトの名無しさん
16/06/05 20:52:12.41 WmT2GOXE.net
このスレは初心者歓迎だけど
必要なことを説明しない馬鹿は歓迎されない

156:デフォルトの名無しさん
16/06/05 21:56:52.06 Mv8L2a4e.net
それがC++族の心意気 なんつて

157:デフォルトの名無しさん
16/06/05 22:07:34.89 QyMHHMZo.net
それモヒカン族って言うんじゃね
最近のC++関連スレはそんな感じ

158:デフォルトの名無しさん
16/06/05 22:26:38.95 Mv8L2a4e.net
モヒカン言うのですか それわそれわ 北斗の拳に出てくるような連中という意味ですね

159:デフォルトの名無しさん
16/06/05 22:56:12.22 D97p9ZEl.net
いや、煽ったり罵倒するのがモヒカン族ってわけじゃないからね。むしろ対局に位置する。
最近のC++関連スレはモヒカン族からは遠いよ

160:デフォルトの名無しさん
16/06/05 23:51:11.21 4G/tEUbL.net
C++ - Win32 API の境界で STL 文字列を使用する
URLリンク(msdn.microsoft.com)
ここ読んでたんだけどchar*を引数に取る関数に
string型の変数strの先頭要素のアドレス投げて直接書き換えて良いんだな、、

161:デフォルトの名無しさん
16/06/06 00:23:38.37 okPwaxJe.net
知らないけど、length()が正しい値を返さなくなっても知らないよ

162:デフォルトの名無しさん
16/06/06 00:42:59.86 wLM97oQJ.net
競合状態を完全に見切って安全なコードが書けるならいいんじゃないかな

163:デフォルトの名無しさん
16/06/06 00:44:56.48 QKtG1TNb.net
記事の手法を取ろうがこれこれこういう理由でダメみたいな話が欲しい

164:デフォルトの名無しさん
16/06/06 04:45:51.98 cpTPD2tY.net
江添亮のAsk.fmに訊くしかない

165:デフォルトの名無しさん
16/06/06 07:17:59.41 17Gbf70B.net
>>159
知らないなら教えてやろう
規格上問題無い

166:デフォルトの名無しさん
16/06/06 15:06:43.73 Kzn0M5ki.net
なんでc_str()で渡さないの?

167:デフォルトの名無しさん
16/06/06 16:21:23.13 fj7LYu66.net
GetWindowText()が要求するのはchar*かwchar_t*だから
まさかconst_cast使う気なの?

168:デフォルトの名無しさん
16/06/06 17:39:21.88 77Vire78.net
c_str()がchar*ではないのかい

169:デフォルトの名無しさん
16/06/06 17:41:18.87 O157QY9D.net
>>166
const char *だ

170:デフォルトの名無しさん
16/06/06 18:22:08.57 UuRWbDaA.net
strcpy の第1引数のようにポインタの指し先の内容を書き換える気マンマンなのが GetWindowText

171:デフォルトの名無しさん
16/06/06 18:25:17.11 LRft9OBL.net
いっそvectorみたいにdataでconstじゃないpointer返してくれればいいのに。

172:デフォルトの名無しさん
16/06/06 19:32:16.12 17Gbf70B.net
C++17でconstでないポインターが返る様になったところで
>>158の様な呼び出し前後でresizeするマヌケなコードを書くぐらいなら
vectorを使った方がいい

173:デフォルトの名無しさん
16/06/06 19:54:31.38 KUhWm8XZ.net
resizeについてはstringでもvectorもどっちもどっちだな
受け取るのは文字列なんだからstringの方が融通が効くんじゃないか?

174:デフォルトの名無しさん
16/06/06 20:05:40.25 LRft9OBL.net
サイズ上限を指定して取得するAPIでは
指定サイズのvectorに書き出してからstring生成とstringのresizeだけなら後者が低コストじゃね。
shrinkされないけど。
実サイズを先に取得するAPIならresizeの必要はないな。
両パターン考えても、vector持ち出すよりstringで閉じている方が分かりやすい

175:デフォルトの名無しさん
16/06/06 20:25:35.80 o2HyISxM.net
stringを使うなら「前」「後」のresizeは省略出来ない

176:デフォルトの名無しさん
16/06/06 20:30:19.61 17Gbf70B.net
>>173
>>172は"abc"を入れたbasic_stringのsize()が4を返しても気にしないタイプ

177:デフォルトの名無しさん
16/06/06 20:43:15.81 FnR2Zt2V.net
そしてif(str==

178:デフォルトの名無しさん
16/06/06 20:44:38.58 FnR2Zt2V.net
if (str == "abc")とやってハマるまでがセット

179:デフォルトの名無しさん
16/06/06 20:48:20.39 LRft9OBL.net
sizeの位置にNUL書き込んじゃうAPIだと微妙か。
規格の表現が微妙っちゃ微妙だがsizeの位置のNULの上にNUL書いたらやっぱりmodify扱いでundefined...なのかね。事実上無意味な制限加えているだけに思えるのだが。

180:デフォルトの名無しさん
16/06/07 18:31:38.72 OPiVK8B6.net
>>177
>規格の表現が微妙
>NUL書いたらやっぱりmodify扱いでundefined...なのかね
貴様まさかModify = Read-Modify-Writeだとでも言い出すのか?

181:デフォルトの名無しさん
16/06/07 21:17:49.43 /QGHlwjR.net
もう許してやれよww

182:デフォルトの名無しさん
16/06/08 08:20:21.47 eNSrjZZk.net
よほど悔しかったんだろ

183:デフォルトの名無しさん
16/06/08 08:23:32.34 jg97zSJM.net
えっ?

184:デフォルトの名無しさん
16/06/08 08:32:19.29 Ko7KPTTd.net
Morphy oneなら知ってるけどな。

185:デフォルトの名無しさん
16/06/09 00:07:05.40 hORDRaIv.net
CからC++の関数を呼ぶには、
---- Cpp.cpp ----
#include <iostream>
class Cpp {
public:
void CppFunc();
};
void Cpp::CppFunc() {
std::cout << "C++" << std::endl;
}
extern "C" void CppFunc() {
Cpp cpp;
cpp.CppFunc();
}
---- main.c ----
extern void CppFunc();
int main(void) {
CppFunc();
return 0;
}
こんな感じでいいのでしょうか?

186:デフォルトの名無しさん
16/06/09 00:57:34.18 YjSc12v6.net
>>183
C の宣言は void CppFunc(void); じゃないと、引数渡してたときにコンパイル通っちゃうよ。
戻り値や引数がある場合の宣言の不一致を避けるため、 #ifdef __cplusplus で
extern "C" を切り分けたヘッダファイルを用意するともっと良い。
URLリンク(www.google.com)

187:デフォルトの名無しさん
16/06/09 01:13:25.52 hORDRaIv.net
ありがとうございます
リンク先もよく読んでみます

188:デフォルトの名無しさん
16/06/09 07:03:55.28 fdzQNk+D.net
>>184
>戻り値 (中略) がある場合の宣言の不一致を避けるため
具体的にはどのような不一致が?

189:デフォルトの名無しさん
16/06/09 07:27:53.35 +EacuYNx.net
extern void CppFunc();
C++ だと CppFunc() は引数の�


190:ネい関数 ... CppFunc(void) と同じ C だと引数の型をチェックしない関数



191:デフォルトの名無しさん
16/06/09 07:58:17.92 GQB18UJk.net
>>186
C++の方でCppFuncのsignature変えたときに
Cの方のextern void CppFunc()を変え忘れるとコンパイルエラーも出ずに未定義動作になるのを防ぐためでしょ
C言語単体でヘッダファイル作る理由と一緒

192:デフォルトの名無しさん
16/06/09 08:10:19.77 AhNb/u1U.net
>>187
>CppFunc(void) と同じ
そんな宣言はCには無い
ISO/IEC 9899:2011 6.7.2p2
『At least one type specifier shall be given』
>>188
戻り値がある場合の宣言の不一致の具体例は?

193:デフォルトの名無しさん
16/06/09 08:41:39.58 BJL7nX2w.net
ret CppFunc(arg);
arg が ブランクの場合 / void の場合
ret が ブランクの場合 / void の場合

194:デフォルトの名無しさん
16/06/09 15:28:52.56 KqeHMSOJ.net
.cを.cppにしてビルドし直すってのわ?

195:デフォルトの名無しさん
16/06/09 18:14:49.16 sLc19eVn.net
名前:
E-mail:
内容:
このソースは使わないのでここに書き込みます
#include <stdio.h>
#include <signal.h>
#include <time.h>
#include <unistd.h>
int i = 0;
timer_t timer_id;
struct itimerspec fin;
void timer_handler(int signo)
{ i = i + 1;
if( i = 2000)
printf("2000\n");
timer_gettime(timer_id,&fin);
float temp = fin.it_value.tv_sec + fin.it_value.tv_nsec / (1000*1000);
printf("%f\n", temp);
timer_delete( timer_id );
}
int main(void){
struct sigaction sigact;
struct itimerspec itval;
sigact.sa_handler = timer_handler;
sigact.sa_flags = 0;
sigemptyset(&sigact.sa_mask);
sigaction(SIGALRM,&sigact,NULL);

196:デフォルトの名無しさん
16/06/09 18:16:23.38 sLc19eVn.net
sigaction(SIGALRM,&sigact,NULL);
timer_create(CLOCK_REALTIME,NULL,&timer_id);
itval.it_value.tv_sec = 0;
itval.it_value.tv_nsec = 10*1000*1000;
itval.it_interval.tv_sec = 0;
itval.it_interval.tv_nsec = 10*1000*1000;
timer_settime(timer_id,0,&itval,NULL);
}
posix環境上で上記のプログラムを動かしました
が何も表示されず困ってます
何処をどう直したら良いのでしょうか

197:デフォルトの名無しさん
16/06/09 18:24:41.68 AhNb/u1U.net
>>192
POSIXの仕様は知らんが
一般にシグナル処理の中でprintfは許されないだろう

198:デフォルトの名無しさん
16/06/09 18:33:34.37 sLc19eVn.net
>>194
他のソースじゃ平気なんです

199:デフォルトの名無しさん
16/06/09 18:36:31.83 sLc19eVn.net
やはりhandlerの中で処理を盛り込むのが原因ですかね
しかしpause()を使ってシグナルを待機して処理を行なうと一応値は表示されるんですが一回ループして終了しました

200:デフォルトの名無しさん
16/06/09 18:41:22.52 sLc19eVn.net
>>196のなかに誤謬がありました
>>196の内容は嘘です無視してください
どうしたら治るんでしょうか

201:デフォルトの名無しさん
16/06/09 19:15:18.49 vUW3kMHA.net
「シグナル処理」なんて一括りにする人は回答すべきじゃない

202:デフォルトの名無しさん
16/06/09 19:22:32.97 vUW3kMHA.net
>>192
> if( i = 2000)
i == 2000
だろ
>>193
> timer_settime(timer_id,0,&itval,NULL);
do { int x; read(0, &x, sizeof x);} while (1);
> }

203:デフォルトの名無しさん
16/06/09 19:47:13.06 ChqiQLUa.net
環境もなにも書かないで
>他のソースじゃ平気なんです
とか言っちゃうやつをよく相手にするよなお前らよっぽど暇なんだな

204:デフォルトの名無しさん
16/06/09 19:52:31.02 vUW3kMHA.net
環境 w
雑魚のテンプレな言いがかり w

205:デフォルトの名無しさん
16/06/09 19:55:42.30 ChqiQLUa.net
例えばLinuxなんなら
URLリンク(linuxjm.osdn.jp)
これくらいは見るべきだし
>>201
お前は雑魚未満
死ねよウンコ野郎

206:デフォルトの名無しさん
16/06/09 20:05:02.07 sLc19eVn.net
環境はcygwinです

207:デフォルトの名無しさん
16/06/09 20:06:52.64 vUW3kMHA.net
>>202
メール欄くらい読んだ方が良いぞ
雑 魚 く ん

208:デフォルトの名無しさん
16/06/09 20:09:28.48 vUW3kMHA.net
>>200
>環境もなにも書かないで
>>他のソースじゃ平気なんです
>とか言っちゃうやつをよく相手にするよなお前らよっぽど暇なんだな
前言翻して顔真っ赤にして喚き出す
典型的な雑魚 w

209:デフォルトの名無しさん
16/06/09 20:11:52.95 ChqiQLUa.net
>>204
今度は偉そうなPOSIX原理主義者かw
メール欄?そんなもの読まねえよバカ

210:デフォルトの名無しさん
16/06/09 20:16:43.32 k48grtab.net
>>199参考にします

211:デフォルトの名無しさん
16/06/09 22:49:27.61 sBILMcxb.net
ここの人すごいですねもうマスターだよマスター
おばあちゃんの知恵袋みたいだ

212:デフォルトの名無しさん
16/06/09 23:39:57.84 vUW3kMHA.net
>>206
雑魚っぷりが、テンプレすぎて笑える
>>193
>posix環境上で上記のプログラムを動かしました
>>200
>環境もなにも書かないで

213:デフォルトの名無しさん
16/06/09 23:44:03.04 vUW3kMHA.net
雑魚の特徴
答えられない質問には質問の不備を指摘する
質問の不備が訂正されてもやはり答えられない

214:デフォルトの名無しさん
16/06/09 23:49:32.68 xqhnbb1P.net
今日のキチガイMVPはID:vUW3kMHAだな
まあ>>199のレスは質問者の役に立ったかも知れない

215:デフォルトの名無しさん
16/06/09 23:51:25.23 Zq6nIrTw.net
うむ、ご苦労

216:デフォルトの名無しさん
16/06/10 00:16:04.13 af0Q21Gi.net
>>211
>>199より後で>>200,202,206と的はずれな戯言を繰り返す雑魚があわれすぎるだろ
>>194はうまく逃げたな
printfは初回の呼び出しだけは<非同期>シグナル処理の中で使わないようにすれば良い

217:デフォルトの名無しさん
16/06/10 00:33:50.22 ksaxsahD.net
>>213
> >>194はうまく逃げたな
何かヤバいクスリでもやっているのかね。
「はて、どこを突っ込まれたか。まさか非同期と明記しなかったからかいやそれはコミュ障すぎるだろう。わからないけどまあいいや」
と思って放置していただけだが

218:デフォルトの名無しさん
16/06/10 00:47:37.08 af0Q21Gi.net
>>213
> printfは初回の呼び出しだけは<非同期>シグナル処理の中で使わないようにすれば良い
こいつは取り下げ
>>214
底辺は同期/非同期の区別無しに盲目的に避けるらしいが、
同期シグナル処理中にprintfを使う事は全然問題無い

219:デフォルトの名無しさん
16/06/10 14:17:25.47 jOBGgXYd.net
C++がある今Cって必要なんですか?
組み込みだとCらしいですけどC++じゃできないんですか?

220:デフォルトの名無しさん
16/06/10 15:46:31.09 baDQtEcV.net
他言語のライブラリが、実はCでの実装をラップしてるだけだった、なんてことがまあまあある

221:デフォルトの名無しさん
16/06/10 18:43:50.29 00vc+0uP.net
Linusにぶっ殺されるぞ…

222:デフォルトの名無しさん
16/06/10 18:50:56.50 zf4Dh+4e.net
キチガイLinusの大好きな言語=C
つまりCは糞

223:デフォルトの名無しさん
16/06/10 19:23:35.03 7xQ2IbxD.net
>>217
ラップしてると言うか複数の言語をサポートするライブラリの実装は大抵Cだし

224:デフォルトの名無しさん
16/06/10 19:54:48.97 XqAkh7YW.net
自分の乗ってる船の底に穴を開けようとするのが基地外や

225:デフォルトの名無しさん
16/06/10 20:05:57.76 aspR4Ygi.net
linuxだって重要な部分はC++で書かれてるとの事。
まぁ全部重要なんだが。

226:デフォルトの名無しさん
16/06/10 20:10:57.22 lJsEyLcp.net
>>222
おいおい,そんな事実はどこにある?

227:デフォルトの名無しさん
16/06/10 20:30:17.80 HFw0DvR5.net
222の重要な部分はchromeとかなんだろ

228:デフォルトの名無しさん
16/06/10 20:30:42.98 aspR4Ygi.net
いやー ストラップ先生の本に書いてあっただけ

229:デフォルトの名無しさん
16/06/10 20:40:35.04 lJsEyLcp.net
>>225
さすがに linux について禿先生がそんな発言をすることはあり得ないだろうに

230:デフォルトの名無しさん
16/06/11 00:00:35.49 EaMJvpi+.net
>>226
C++第四版見なさい。

231:デフォルトの名無しさん
16/06/11 07:30:21.01 8DPEVAdJ.net
linusはアンチc++で有名だが

232:デフォルトの名無しさん
16/06/11 08:53:47.04 Gk5ZN5zh.net
>>227
そんなに見てほしいなら
ケツの穴広げてお願いしてみろよ
そして第何節に書いてあるのか言って見ろバーカ

233:デフォルトの名無しさん
16/06/11 10:09:03.05 1hn1NZl3.net
Linuxの重要な部分とやらが何を指しているのかわからないが
彼方此方から使われるパフォーマンスが求められる基本的な部分というのであれば
アセンブリとCで書かれているのは間違いがない

234:デフォルトの名無しさん
16/06/11 10:19:21.93 AvTqLvrc.net
Cやアセンブリで書いた方が実行速度が速いってんなら、
きっとキチガイじみたC/アセンブリの能力を持ってるんだろうね
Common Lispで書いた方が速くなるケースも多いよ。正規表現マッチャとか。
I/O周りをLispで書けとは言わんが。

235:デフォルトの名無しさん
16/06/11 11:02:17.42 hLugldX8.net
>>229
勘弁して下さい
そんな太いのムリですケツの穴ちぎれちゃいます

236:デフォルトの名無しさん
16/06/11 11:10:22.14 EaMJvpi+.net
>>229
本屋行って一章読めば済む話。すぐわかる。
アマゾンもC++だそうだ。ほんまかいな。

237:デフォルトの名無しさん
16/06/11 13:01:12.70 0dDbJM6A.net
まあ、素人が書くC++より玄人が書くJavaの方が速い。アルゴリズムこそ重要ということだ

238:デフォルトの名無しさん
16/06/11 13:16:10.96 1hn1NZl3.net
カーネルは速い遅いのほかにメモリ効率やレスポンスの問題もある
だからメモリを直接いじれるCが使われるわけであって
Linuxのカーネルの話をしているときに、CommonLispがどうとかJavaがどうとか言い出すのはおかしい
全く関係のない話

239:デフォルトの名無しさん
16/06/11 13:21:10.86 1hn1NZl3.net
というか、CommonLispやJavaじゃ直接ハードウェアを制御できないし
マークスイープ系GC付きの言語でカーネルを開発するとか有りえないし
Linuxのカーネルには関係がない

240:デフォルトの名無しさん
16/06/11 13:35:56.33 1hn1NZl3.net
全てのプロセスから使われるカーネルの最も基本的な部分としてプロセススケジューラがあるけど
こういった中枢はCやアセンブリで書かれているのに違いない、という話をしている
JavaやCommomLispで書くわけがない

241:デフォルトの名無しさん
16/06/11 13:58:01.26 RWVeQXPa.net
いつからLinuxカーネルの話になったんだ
Linuxの重要な部分は不明のまま宙に浮いている状態だと思うんだが

242:デフォルトの名無しさん
16/06/11 14:00:56.18 QCYIGn/3.net
男は度胸! 何でもためしてみるのさ - 阿部高和

>>227 >>233 の情報により探すべき場所が分かったので
『プログラミング言語C++第4版』第1章を見た(立ち読みではない)。
1.4.5 C++はどのように使われているのか (p.35)
「現在のオペレーティングシステム(略・OS列挙にLinux含む)でも、
主要部分がC++で記述されている」
とりあえず >>222 >>225 の主張「『Linuxも主要部分がC++で書かれている』と
ストラウストラップの本に書いてあった」は正しいと確認できた。
親分の主張が本当かは別の話だけどね。

でも本屋で立ち読みするにはデカすぎるよ、この本。

243:デフォルトの名無しさん
16/06/11 14:15:43.70 b4RXfT2Q.net
>>238
OSの重要な部分がカーネルじゃないと言う主張?
なかなか斬新だな

244:デフォルトの名無しさん
16/06/11 15:02:58.71 0dDbJM6A.net
わかった、もうわかったからやめてくれ

245:デフォルトの名無しさん
16/06/11 15:27:31.25 RWVeQXPa.net
>>240
重要なのはNTカーネルかDarwinかHURDかLinuxかということじゃない
どんなライブラリやフレームワークが使えるのかということだ
という考え方もあると思うし特に斬新だとも思わない
ひょっとしたら昔のWinodowsならMS OFficeとか一般的にはWebブラウザとかが
OSの主要な利用目的だという人には特定のアプリが主要部分かもしれない

246:デフォルトの名無しさん
16/06/11 16:35:40.64 b4RXfT2Q.net
> Linuxの重要な部分
の話に
> NTカーネルかDarwinかHURD
とか頭おかしい

247:デフォルトの名無しさん
16/06/11 16:50:17.46 RWVeQXPa.net
>>243
>>240が「OSの主要な部分」に言及していることへのレスだからおかしなことはない
Linuxの主要な部分はOSの主要な部分と密接に関連する事でありその意味でもおかしくない
他人の頭がおかしいと思う時は同じ確率で自分の頭がおかしい可能性を考慮した方がいい

248:デフォルトの名無しさん
16/06/11 17:01:25.22 1hn1NZl3.net
つまり、お前の頭がおかしいって自分で言ってるわけだな

249:デフォルトの名無しさん
16/06/11 17:17:32.19 TH7fz8sf.net
>>244
話の流れも読めないアホ乙

250:デフォルトの名無しさん
16/06/11 17:23:38.09 RWVeQXPa.net
人格攻撃はつまらんからもう引っ込むよ

251:デフォルトの名無しさん
16/06/11 17:27:18.79 1hn1NZl3.net
>Linuxの主要な部分はOSの主要な部分と密接に関連する事でありその意味でもおかしくない
まずもってこの言葉が意味不明
Linuxの主要な部分もOSの主要な部分もカーネルであるから
結局、Linuxの主要な部分はカーネルってことになって何の反論にもなっていない
カーネルは核という意味であるし
シェルは殻という意味であるし
アプリケーションは応用ソフトと訳す
ソフトウェア業界共通の考え方
OSの主要な部分や、それに準じる言い方をしたときに
それがカーネルを指さないのだとしたら
単に発言をした人の言語能力が無いか、考え方がおかしいか、常識が無いか
何かは知らないが
こちらは変な考え方に合わす気は全くない

252:デフォルトの名無しさん
16/06/11 17:29:03.90 38ifMasY.net
余所OSはどうでもいい
C++嫌いの linus の linux の重要な部分(カーネルと受け取るよなぁ)で 本当にC++が使われてるの?

253:デフォルトの名無しさん
16/06/11 17:31:57.25 1hn1NZl3.net
つまり、元の原文がLinuxの主要部分をどういう意味で使っていたかにかかわらず
普通に考えればLinuxの主要部分がCで書かれているのは周知の事実なわけだから
言っていることがおかしい、と、単に切り捨ててしまえばよい
実際に文章としておかしいわけだから、それでよい

254:デフォルトの名無しさん
16/06/11 17:50:08.81 1Pvaghsz.net
kindleのサンプルで該当部分が読めるな
Early applications tended to have a strong systems programming flavor. For example, several early operating systems have been written in C + +: [Campbell, 1987] (academic), [Rozier, 1988] (real time), [Berg, 1995] (high-throughput I/ O).
Many current ones (e.g., Windows, Apple’s OS, Linux, and most portable-device OSs) have key parts done in C + +.

255:デフォルトの名無しさん
16/06/11 18:04:02.27 1Pvaghsz.net
「C++で書かれた重要な部分を持つ」だな

256:デフォルトの名無しさん
16/06/11 18:08:40.19 EaMJvpi+.net
まぁC++の方が記述が楽で、速度もそんなに変らなかったから採用したとか?
CでもC++でもgccは結局アセンブラでコード吐くから、どっちでもいいのかな。
カーネルは触った事ないからほんとわかんない。

257:デフォルトの名無しさん
16/06/11 18:29:32.06 xVWoidXE.net
ハゲの本は妄想で書かれたデタラメなので昔からISO規格との乖離が激しい
Linuxについては>>250の通りだが糞本の誤りを挙げてもきりがない

258:デフォルトの名無しさん
16/06/11 19:15:05.42 wrMutv45.net
今となってはメジャーなオープンソースコンパイラはgccもclang(llvm)もc++
で書かれているから、少なくとも間接的に重要な一部ではあるな。

259:デフォルトの名無しさん
16/06/11 20:03:43.27 QkEgHpib.net
あのLinusがC++で書かれたコードをLinuxカーネルに含めるわけないじゃん
gitもC++とそれを使う人を排除するためにC使ってるような人だぜ

260:デフォルトの名無しさん
16/06/11 21:57:49.75 EaMJvpi+.net
>>255
なーるw
ちょと調べた やぱアンチC++厨ってのいるみたいね。
>>256
リヌースはもうメンテナやってないのでは?

261:デフォルトの名無しさん
16/06/11 22:18:36.68 i36KAbVu.net
プログラミング初級者の俺の感覚で言うと
Cは古臭い感じがする
C++は何かコードがカッコいいです
例えるならCは国産車でC++は外車

262:デフォルトの名無しさん
16/06/11 23:43:26.04 7KlndMKo.net
いまのLinuxのカーネルはC++でないとコンパイルできない?

263:デフォルトの名無しさん
16/06/12 00:14:00.06 5DLfankQ.net
実際C言語は古いからなぁ
構造化しただけのアセンブラと言われたくらい低レベルなのが逆にC言語の強み
C++が滅んでもC言語は滅ばないだろう
でもそこからC++が再生産されると思う

264:デフォルトの名無しさん
16/06/12 01:42:07.98 LFy/DKKP.net
C/C++はメモリの管理に関しては他の高級言語を寄せ付けないからね
一応D言語とかもあるけど全然流行ってないしね
単なるメモリブロックをキャストして構造体や基本型とみなして、ガシガシ演算できるし
不必要な動的メモリ確保をしなくてもよいようになっていたり
メモリ配置がシンプルだったり
こういった言語は必要な時は必要だから、すごく貴重

265:デフォルトの名無しさん
16/06/12 02:35:27.16 6+0CTg9r.net
>>260
ゴキブリみたいな言語やな

266:デフォルトの名無しさん
16/06/12 02:52:53.96 jeDA2wHS.net
Cは忘れてもちょちょいと調べれば大丈夫だかんなぁ。

267:デフォルトの名無しさん
16/06/12 08:33:45.93 8zbSJCgw.net
忘れてもちょちょいと調べるだけで済まないC++の複雑さが異常

268:デフォルトの名無しさん
16/06/12 11:08:07.40 6+0CTg9r.net
積分の計算とC++は似ている
やってないと凄く鈍る

269:デフォルトの名無しさん
16/06/12 12:03:36.02 txXY6IjH.net
そんなもん数学全般・プログラム全般一緒や

270:デフォルトの名無しさん
16/06/12 13:23:52.04 jeDA2wHS.net
x^(1/2)を微分してください

271:デフォルトの名無しさん
16/06/12 14:01:18.72 PImQTz6v.net
いやc++もちょいちょい調べれば済むだろう。

272:デフォルトの名無しさん
16/06/12 14:51:58.14 CtcpeTfj.net
ちょっと調べてv2の値がわかる人はかなり変人
inline int f () {return 1;}
extern int v1;
int v2 = v1;
int v1 = f();

273:デフォルトの名無しさん
16/06/12 15:11:47.30 CwU67sCL.net
変人というよりバカだろ
そこコードだけじゃ「分からない」が正解

274:デフォルトの名無しさん
16/06/12 15:22:55.86 cjUhha15.net
リンカがエラーを吐く時の気持ちがわかる

275:デフォルトの名無しさん
16/06/12 15:54:00.50 jeDA2wHS.net
ちょちょいとコンパイラに聞いてもいいでしょうか

276:デフォルトの名無しさん
16/06/12 22:26:52.06 /M2KEAMW.net
C言語実務歴9年です。このたび仕事の関係でC++を使わざるを得なくなり
入門書籍を数冊あたりましたが、どうしてもC++「らしい」コードが書け
ません。Cで考える癖が抜けないというか…
特に継承をうまく使えないのですがなにか参考になる書籍やサイトはあり
ませんか?
読んでコードも打ち込んで動かしてみた本は以下です:
「ロベールのC++入門講座」
「C++クラスと継承完全制覇」
「美しいC++プログラミング見本帖」

277:デフォルトの名無しさん
16/06/12 22:36:43.15 txXY6IjH.net
別にそれで動くならいいと思うんだけど・・・
あと参考にすべきは書籍じゃなくてオープンソースコードじゃね

278:デフォルトの名無しさん
16/06/13 01:44:12.10 0+PgBkzo.net
Cだとこう作りましたと説明出来るけど、C++ではそう言えないなら
背後のソフトウェア工学の歴史を学ぶといいと思う。
なぜオブジェクト指向でつくるのか第二版 がいいよ。
カプセル化、インヘリタンス、ポリモフィズムが綺麗に説明されてる。
ただし、Javaがベースなってるんでそこはまぁw

279:デフォルトの名無しさん
16/06/13 03:08:23.31 y0BBPPFa.net
そもそも継承は使う必要がないなら使わない方が良いような

280:デフォルトの名無しさん
16/06/13 05:56:59.55 CYf6PZlM.net
Javaとかいう現代のCOBOL

281:デフォルトの名無しさん
16/06/13 06:56:03.84 0+PgBkzo.net
あれ 前にも同じようなクラス作ったよな って時が汎化と特化のチャンスかと

282:スッキリ厨
16/06/13 07:45:20.14 Qv09sGPU.net
C言語を10年以上やっている、老害プログラマでも、C++は出来ない。
脳みそが手続き型だから
ま�


283:クこの本で、脳みそをオブジェクト指向にして下さい。 スッキリわかる Java入門 第2版、2014 20時間もあれば読める。3回読むといい



284:デフォルトの名無しさん
16/06/13 11:02:28.51 Q5b45iCV.net
>脳味噌が手続き型だからC++はできない
??????

285:デフォルトの名無しさん
16/06/13 18:40:26.33 PuKo8N3u.net
オブジェクト指向言語としてはJavaの方が上だし、システム記述言語としてはCの方が上だから、
Windows専用言語だな。

286:デフォルトの名無しさん
16/06/13 18:41:45.20 lgEcYsTe.net
ぷっ

287:デフォルトの名無しさん
16/06/13 20:31:24.62 FbBzWjf+.net
>>281
> オブジェクト指向言語としてはJavaの方が上だし
ハイハイお前の言う通りだからおとなしく巣に帰れ

288:デフォルトの名無しさん
16/06/13 20:59:47.08 9Qdxrte8.net
実際そこ”だけ”みたらそうじゃね?

289:デフォルトの名無しさん
16/06/13 21:09:03.19 PuKo8N3u.net
巣ってC++相談室の事?

290:デフォルトの名無しさん
16/06/13 21:47:17.65 nKeXx6ro.net
C++の勉強をしようという奴にjavaやらせるとかどういう意地悪だ?C++はあんなスクリプトとは似て非なるものだ。
>>273
「C++ 入門書の次に読む本」
URLリンク(www.amazon.co.jp)

291:デフォルトの名無しさん
16/06/13 22:07:41.74 rR6RTR1C.net
多重継承も出来ないオブジェクト指向なんて

292:デフォルトの名無しさん
16/06/14 05:02:31.27 ZiV/YhNq.net
Ocamlを少し覗いたけどリスト処理周りの扱い易さに衝撃を受けた
C++ってマジガチでアセンブラで組む必要があるけどツライのでお願い
あと、ちょと高度な機能も追加してって感じだな
C++でリストとかツリー構造を使うと軽く死ねる
ml系は天国

293:デフォルトの名無しさん
16/06/14 08:05:33.85 0VVNdSFg.net
>>273
C++らしいって話とオブジェクト指向の話は重なったりなかったりするので区別して勉強した方がいい

294:デフォルトの名無しさん
16/06/14 08:46:44.67 bXJY80s3.net
原付2種は60km/hで走行可能なので高速自動車国道を走行できる
正 否
雨の日に歩行者の傍を通過するので徐行するも、それでも水溜まりの水をかけてしまったが、自動車運転者は十分な努力をしたといえるので責任はない
正 否
アセンブリ言語の、コンパイラに相当するものをアセンブラと言う
正 否

295:デフォルトの名無しさん
16/06/14 14:14:43.74 dpmhkNFr.net
た 多重継承ってやった事ないっす 頭ウニになりそうで

296:デフォルトの名無しさん
16/06/14 15:21:10.15 5mj4vfHf.net
コンテナクラスのアクセスの仕方について誰か教えてほしいです。
こんな感じのプログラムを書いてるのですが、
class TEST {
public:
vector<int> a[32];
TEST() : a() {};
};
TEST test;
auto itr = test.a.begin()
最後の行のイテレーター定義部分で、「式にはクラス型が必要です」とのエラーが出てしまいます。
ただ、この行を、
auto itr = test.a->begin()
と変えるとエラーが消えて正常に(?)定義ができます。
これが何故なのかさっぱりわかりません・・・。
vectorのメンバ関数って別に普通にドット演算子でアクセスできますよね?
なんで急にポインタを参照するためのアロー演算子が出てくるのでしょうか・・・。

297:デフォルトの名無しさん
16/06/14 15:24:50.62 ib+gOtfn.net
[32] で vector<int> の配列になってるんでねーの? 知らんけど

298:デフォルトの名無しさん
16/06/14 15:31:55.80 jZNoibgh.net
この板キチガイ多すぎない?

299:デフォルトの名無しさん
16/06/14 15:35:52.97 jZNoibgh.net
vector<int> a[32]は大きさ32のvector一つじゃなくて、vector<int>を指すポインタ32個の配列になってる

300:デフォルトの名無しさん
16/06/14 15:49:59.88 WFKEQApp.net
>>295
ポインタじゃないstd::vector<int>の実体32個の配列
すぐ人をキチガイ呼ばわりするやつはダメだな

301:デフォルトの名無しさん
16/06/14 15:52:25.05 5mj4vfHf.net
>>293
>>295
なるほど・・・ありがとうございました。
vector<int> a[32];は、メンバイニシャライザでvectorの初期化をできないかと色々調べつつやってて、出来たモノでした・・・。
となると、クラス宣言部分で、メンバ関数Vectorの要素数を決めつつ、初期化って事は不可能ってことなになるのかな?
配列ならできるのにorz
大人しくコンストラクタ内で、必要な数だけpush_back() でもするのが普通の使い方なのかな・・・。

302:デフォルトの名無しさん
16/06/14 16:05:35.45 WFKEQApp.net
>>297
使ってるコンパイラがC++11に対応してるなら
std::vector<int> a=std::vector<int>(32);
って書けると思うけど
対応してないならコンストラクタの初期化リストで要素数指定すればいい

303:デフォルトの名無しさん
16/06/14 16:36:54.70 5mj4vfHf.net
>>298
vector<int> (32)って書き方があったのですね・・・。
public:
 vector<int> a(32);
ってやり方最初に試してエラーでるから、メンバ変数では要素数指定は使えないものだと勝手に思い込んでました。
コンパイラも対応してるみたいですので、これでやってみます。
(この状態で要素の値をを見ると、何故かちゃんと0になってる(初期化されてる?)のですが、これはコンテナクラスの仕様かな?
これはコンテナクラスについて、勉強して調べて置きます・・・)
ありがとうございました。

304:デフォルトの名無しさん
16/06/14 16:43:14.90 NZckrNzn.net
クッソワロタァ!

305:デフォルトの名無しさん
16/06/14 17:19:34.51 pvbdvxAh.net
初心者ですがよろしくお願いします
下記の様なクラスが宣言されたとします
この下のprivate slots:のslotsの意味がわかりません
単にprivate:だけでよいのでは?
回答よろしくお願いします
class Notepad : public QWidget
{
Q_OBJECT←これはマクロです
public:
Notepad();
private slots:←このslotsの意味がわかりません
void quit();
private:
QTextEdit *textEdit;
QPushButton *quitButton;
};

306:デフォルトの名無しさん
16/06/14 17:33:22.12 WFKEQApp.net
>>301
Qtで定義されてるマクロで、qmakeでparseされる
Qtスレで聞いた方がいい

307:デフォルトの名無しさん
16/06/14 17:56:00.24 mJgq2R2v.net
>>302やはりマクロだったんですね
スレ違いすいませんでした
ありがとうございました

308:273
16/06/14 19:19:41.05 Oz3bsvh7.net
みんなありがと
さっき教えてもらった本買ったよ

309:デフォルトの名無しさん
16/06/14 21:55:46.66 ZDMehPsf.net
>QWidget
なんか嫌な名前だな
#define entern
とかしてそうだ

310:デフォルトの名無しさん
16/06/14 23:20:26.82 mJgq2R2v.net
質問があります

311:デフォルトの名無しさん
16/06/14 23:28:10.56 mJgq2R2v.net
class a{
public:b(){
int x = 0;
}
void c(){
}
};
void c()内から変数xを操作する方法はないのでしょうか

312:デフォルトの名無しさん
16/06/14 23:35:03.86 mJgq2R2v.net
bはaとしても可です
要はコンストラクタで宣言された変数を他の関数内で使う場合はどうしたらよいのでしょうか
初心者ですがすいませんでした

313:デフォルトの名無しさん
16/06/14 23:55:17.08 DMYddHZA.net
そのクラスのメンバ変数にすれば?

314:デフォルトの名無しさん
16/06/14 23:56:07.06 AMaRAnQG.net
コンストラクタ内で宣言したローカル変数xはコンストラクタが終わった時点で消えるものと思ってください
xがグローバル変数であるとかクラスaのメンバ変数であるとかでないと無理だと思います
あと詳しい人よろしこ

315:デフォルトの名無しさん
16/06/15 00:06:56.94 +fto8mir.net
グローバル変数ってどう定義するんですか?
pythonだとglobal修飾子をそのままつければいいものだったけど

316:デフォルトの名無しさん
16/06/15 00:09:17.85 JxLjXALv.net
トップレベルのスコープで変数宣言

317:デフォルトの名無しさん
16/06/15 01:13:07.03 6m5ApfU9.net
>>311
姑息なプログラミングでない限り、グローバル変数の使用は通常お勧めいたしておりません

318:デフォルトの名無しさん
16/06/15 01:37:10.55 +TkysGmJ.net
関数、クラスの外で宣言すれば外部変数ですよ。どこでも。
もちろん他コンパイル単位からアクセスする場合はexternをつける。

319:デフォルトの名無しさん
16/06/15 01:43:36.62 50wzyrZY.net
>>258
アホか

320:デフォルトの名無しさん
16/06/15 01:45:14.62 50wzyrZY.net
>>271
リンカに意識はない

321:デフォルトの名無しさん
16/06/15 04:34:16.40 Nqdw+vDa.net
>>258
Cはインディーカー
C++はF1
Javaはセーフティカー

322:デフォルトの名無しさん
16/06/15 10:24:21.09 orNzYnVk.net
>>315 >>316
そんなしょーもない遅レスすんな
出遅れたなら心の中にしまっとけ

323:デフォルトの名無しさん
16/06/15 11:02:02.67 50wzyrZY.net
>>318
もう少し気の利いたレスしろや
だからおまいはいつまでも童貞なんだよ

324:デフォルトの名無しさん
16/06/15 11:47:37.50 R5kYdbzu.net
そんなことを言っても>>315,316がクソレスである事実に変わりない

325:デフォルトの名無しさん
16/06/15 12:16:39.33 AN5Y5vs6.net
ところでクラスの静的変数はグローバル変数に含みますか?

326:デフォルトの名無しさん
16/06/15 12:18:12.07 lzA0Ui07.net
含みません

327:デフォルトの名無しさん
16/06/15 14:22:48.92 50wzyrZY.net
まあこのスレは童貞の溜まり場。↑も↓も俺も。

328:デフォルトの名無しさん
16/06/15 14:50:55.49 +TkysGmJ.net
あんだと貴様 ぶっとばすぞー

329:デフォルトの名無しさん
16/06/15 21:16:23.68 OvA7yRcZ.net
今更Visual C++2012 なんだけどさ、
URLリンク(ideone.com)
これがなぜか実行時にクラッシュ(segmentation fault)するのよ。
大規模なプログラムでこんなのに当たったら、まずバッファーオーバーフロー疑って
時間浪費してしまうだろうと思うと恐ろしいわ・・

330:デフォルトの名無しさん
16/06/15 21:56:26.85 k+QmXXah.net
似たようなバグを2013で見たことがあるな。
アセンブラ出力を見たら間接参照のレベルがずれていてメモリアクセス違反で落ちたので
きっと関数への参照型の型推論をミスしたのだろう

331:デフォルトの名無しさん
16/06/15 22:20:34.66 +TkysGmJ.net
コンパイルは通るんだもんねぇ。

332:デフォルトの名無しさん
16/06/15 22:41:45.50 8QoAo+0t.net
>>325
手元にVS2012がないので試せないけど
fcallに渡す前にremove_referenceすればいいんでないの
ポインタの参照の参照なんか取れる訳ないので動作としては正常かと

333:デフォルトの名無しさん
16/06/15 22:50:03.02 k+QmXXah.net
>ポインタの参照の参照なんか取れる訳ない
んなこたーない
>動作としては正常
んなこたーない

334:デフォルトの名無しさん
16/06/15 22:55:35.79 6m5ApfU9.net
マジかよMS最低だな!

335:デフォルトの名無しさん
16/06/15 23:27:48.82 8QoAo+0t.net
>>329
参照ってポインタの糖衣構文だから、ポインタと同じだよ
ポインタのポインタのポインタを取ったらそりゃsegfaultするだろっていう

336:デフォルトの名無しさん
16/06/15 23:49:06.45 k+QmXXah.net
>>331
>>328は参照を受け取る関数に参照変数を渡すことを参照の参照を取ると言っているようだが
それと>>331のレスにどのような繋がりがあるのかね。
それに>>325を見てポインターの参照かがどこから出てきたのか。

337:デフォルトの名無しさん
16/06/16 07:16:12.20 zmO6Lq/E.net
クラスのstaticメンバもトップレベルの変数もリンカから見たら差はない
どこからでもアクセスできる

338:デフォルトの名無しさん
16/06/16 16:09:26.45 rsf/7RT/.net
privateでもぉ?

339:デフォルトの名無しさん
16/06/16 19:55:49.71 tScAcg4U.net
>>334
アスペかよお前は
14.7.2でも使ってprivateアクセスしてろバーカ

340:デフォルトの名無しさん
16/06/16 20:06:28.01 9IaDv8pz.net
構わなきゃいいのに

341:デフォルトの名無しさん
16/06/16 20:38:54.54 cs6nx/n7.net
ハハワロス

342:デフォルトの名無しさん
16/06/16 20:44:36.92 RzCdkn+H.net
ははははははとわらう

343:デフォルトの名無しさん
16/06/16 23:49:57.20 9QdcGZv1.net
グローバルオブジェクトはいいの?
メンバ変数をメンバ関数でしっかり管理してるって前提だけど。

344:デフォルトの名無しさん
16/06/17 00:33:01.77 ny8DMCFm.net
プロセス中に絶対一つしか存在しえないオブジェクトで
しかもシステムの基本的な部分であり彼方此方から参照されるんなら良いんじゃね?
例えばジャイアントロック用の同期オブジェクトとか

345:デフォルトの名無しさん
16/06/17 08:23:55.45 sVvcnXcM.net
拙者、便意を催したでござる
俺グローバルオブジェクトのコンストラクタでジャイアントロックする
ブリブリィッッ

346:デフォルトの名無しさん
16/06/17 12:43:12.27 jaeNUsNr.net
ジャイアントロックって名前が凄いな

347:デフォルトの名無しさん
16/06/17 18:44:43.59 PuKdxxvH.net
>>339
別にいいけど
キャッシュ管理とかサービスバスとかDIコンテナとか読み取り専用オブジェクトとか普通に使うプロジェクトはあるし好きにすればいい
ただグローバルオブジェクトじゃないとダメだって状況はあまりないね
それと使うにしてもグローバルオブジェクトと認識しないと使えないような設計はバッドだね

348:デフォルトの名無しさん
16/06/17 19:58:15.60 tKBpRkev.net
C++の標準ライブラリに喧嘩売ってんのかw

349:デフォルトの名無しさん
16/06/17 20:33:44.49 h8nQ2p5e.net
VC2015を使用して、文字セットでUNICODEを選択して開発しています。
SJISのテキストファイルから読み込んだ文字列をSetDlgItemText()に渡しているのですが
SetDlgItemTextW()に渡すために事前にMultiByteToWideChar()でワイド文字に変換するのが煩わしいので
自分でSetDlgItemTextA()を呼んで直接マルチバイト文字列のまま渡してしまおうと考えています。
このようにマルチバイト文字列を受け取る関数とUNIDCODE文字列を受け取る関数を混在させてもOKでしょうか

350:デフォルトの名無しさん
16/06/17 20:34:28.42 ISmRq0te.net
std::coutってmain開始前は使えないよな?

351:デフォルトの名無しさん
16/06/17 21:01:12.09 ftTJ8Y9E.net
>>346
実装によるんじゃね?
そこまで規定してたっけ?

352:デフォルトの名無しさん
16/06/17 21:23:06.23 5HmA4kNf.net
ISO/IEC 14882:2014 27.4.1p2
The objects are constructed and the associations are established at some time prior to or during the first
time an object of class ios_base::Init is constructed, and in any case before the body of main begins execution.
mainの本体が実行される前にcoutが初期化されることは保証される

353:デフォルトの名無しさん
16/06/17 21:33:18.57 5fWY3W8K.net
>>345
OK

354:デフォルトの名無しさん
16/06/17 21:51:29.39 h8nQ2p5e.net
>>349
ありがとうございます

355:デフォルトの名無しさん
16/06/17 23:06:46.37 jaeNUsNr.net
main前ってどゆこと?

356:デフォルトの名無しさん
16/06/18 04:59:56.10 YZGqi88u.net
>>348
それは main が実行される時には使える
って言うだけで
main 実行前に使える保証にはならんよ

357:デフォルトの名無しさん
16/06/18 05:24:27.36 q0688PJ8.net
>>351
グローバル変数の初期化の時点
int main() {}
A global_unko;// A::A()の実行
int global_unko2 = f(); // fの実行

358:デフォルトの名無しさん
16/06/18 12:47:38.42 thbDmWc+.net
>>353
グローバルオブジェクトの初期化に関数が使える(使えてしまう)
って事か。

359:デフォルトの名無しさん
16/06/18 12:54:46.90 3Ro7Pv4n.net
main以前に動けるアプリケーションコードがあるということ

360:デフォルトの名無しさん
16/06/18 19:43:35.89 KfEx8M6W.net
無いだろう‥普通

361:デフォルトの名無しさん
16/06/18 20:03:49.68 ankGZ2Cj.net
C++サポートしてるリンカーなら必ずある

362:デフォルトの名無しさん
16/06/18 20:09:37.14 KfEx8M6W.net
その main 以前に動けるアプリケーションコードはどう記述するのか?

363:デフォルトの名無しさん
16/06/18 20:12:28.42 AY0U4nNV.net
>>358
グローバル変数の初期化

364:デフォルトの名無しさん
16/06/18 20:20:10.41 TdgL7vma.net
>>353 の A::A() に main() で記述しようとした一切合切をぶっこむことが・・・
std::cout 使うけど可能だっけ?どうだっけ?が >>346

365:デフォルトの名無しさん
16/06/18 20:22:54.34 FQ/IehJt.net
gcc 5.3 と clang 3.7 では普通に動いた
#include <iostream>
class Hello{
  public: Hello(){ std::cout << "Hello World!" << std::endl; }
} world;
int main(){ return 0; }

366:デフォルトの名無しさん
16/06/18 21:05:11.96 OLM6vz94.net
祖国に帰れよ

367:デフォルトの名無しさん
16/06/18 21:20:15.95 zkDN91BV.net
main中
char* name = "test.txt";
int pathsize = sizeof(name)/sizeof(name[0])+8;
char path[100] = "C:\\Test\\";
strcat_s(path,pathsize,name);
ならちゃんと動いてpathの中身が"C:\\Test\\test.txt"になります
でもコマンドライン引数でファイル名を入力するのでpathを入力から決めたいので動的配列にしたら
char* name = "test.txt";
int pathsize = sizeof(name)/sizeof(name[0])+8;
char* path;
path = (char*)malloc(sizeof(char)*namesize);
char path = "C:\\Test\\";
strcat_s(path,pathsize,name);
としても途中で「動作を停止しました」が出て動きません。
誰か教えてください!

368:デフォルトの名無しさん
16/06/18 21:22:38.48 zkDN91BV.net
>>363
間違ってたので修正
char* name = "test.txt";
int pathsize = sizeof(name)/sizeof(name[0])+8;
char path[100] = "C:\\Test\\";
strcat_s(path,pathsize,name);
ならちゃんと動いてpathの中身が"C:\\Test\\test.txt"になります
でもコマンドライン引数でファイル名を入力するのでpathを入力から決めたいので動的配列にしたら
char* name = "test.txt";
int pathsize = sizeof(name)/sizeof(name[0])+8;
char* path;
path = (char*)malloc(sizeof(char)*pathsize);
char path = "C:\\Test\\";
strcat_s(path,pathsize,name);
です
お願いします

369:片山博文MZ ◆T6xkBnTXz7B0
16/06/18 21:30:56.80 AY0U4nNV.net
ポインターにsizeofするとアドレスのバイトサイズになってしまうよ。
sizeofに施すなら配列にしないと。
char path[...]に連結後の文字列を格納するなら、[...]に充分なサイズを指定しないと。
strcat_sの説明をよく読め。

370:片山博文MZ ◆T6xkBnTXz7B0
16/06/18 21:36:35.07 AY0U4nNV.net
それから
char *p = "NG";
は現在のCでは間違いだから。const付けて
const char *p = "OK";
にするか、次のように配列にする。
char p[] = "OK";

371:デフォルトの名無しさん
16/06/18 21:50:16.55 q0688PJ8.net
>char *p = "NG";
>は現在のCでは間違い
へー、
ところでISO/IEC 9899:2011のどこにそのルールが書いてある?

372:片山博文MZ ◆T6xkBnTXz7B0
16/06/18 21:59:00.02 AY0U4nNV.net
>>367
STR05-C

373:デフォルトの名無しさん
16/06/18 22:03:55.00 WHRY+YBu.net
>>352
何のためにios_base::Initがあると思ってんだよ

374:デフォルトの名無しさん
16/06/18 22:07:14.55 q0688PJ8.net
>>368
そのようなものはISO/IEC 9899:2011やn1570を検索しても出てこないようだが
空想の仕様か何か?

375:デフォルトの名無しさん
16/06/18 22:11:33.43 AY0U4nNV.net
>>370
すまん
URLリンク(www.jpcert.or.jp)

376:デフォルトの名無しさん
16/06/18 22:23:38.64 q0688PJ8.net
なるほど
Cもそろそろ>>371を言語仕様に取り入れるべきだな
既存のウンコードがコンパイルできなくなるから変えるつもりは無いのだろうが

377:デフォルトの名無しさん
16/06/18 22:36:21.16 AY0U4nNV.net
>>372
バレてるよ

378:デフォルトの名無しさん
16/06/19 07:34:52.42 1KHjmJ1T.net
>>371
> c[0] = 'C' のような文がこのコード例の宣言のあとに置かれたとすると、
> コードはエラーなくコンパイルされるだろうが、文字列リテラルが定数と見なされるため、
> 代入文の結果は未定義となる。
代入文の結果が未定義なんて、どこの素人が書いた解説だ?
そもそも、
> 文字列リテラルが定数と見なされるため、
ならば、エラーだろ

379:デフォルトの名無しさん
16/06/19 08:41:23.88 /rk5wqNm.net
>>374
ハハッ素人が他人を素人呼ばわりとか面白い冗談だな

380:デフォルトの名無しさん
16/06/19 11:18:22.35 h4qyjFbF.net
>>371だが
『文字列リテラルの型は char 型の配列 (中略) しかし (中略) 名目上は定数であり、そのため const 修飾により保護すべきである』
何故非const型なのかの説明を飛ばして 「名目が定数なので保護すべき」と結論付けるのは論理の飛躍。
そもそも規格上は定数ではないと思うのだが。
まあ鴨ネギ大学の学生がWikiに書き込んだようなゴミ解説に目くじらを立ててもしょうがない

381:デフォルトの名無しさん
16/06/19 12:01:42.97 /rk5wqNm.net
URLリンク(docs.oracle.com)

382:デフォルトの名無しさん
16/06/19 12:09:41.08 /rk5wqNm.net
C言語では規格上はconstではない(既存コードの互換性のため)
C++ではconst

383:デフォルトの名無しさん
16/06/19 12:17:49.74 ao4WLgfX.net
文字リテラルの const って
char * const p = "abc";
char const * p = "abc";
char const * const p = "abc";
のどれなの?

384:デフォルトの名無しさん
16/06/19 12:23:03.24 vt+XBkS4.net
全部はずれ

385:デフォルトの名無しさん
16/06/19 12:59:44.79 ao4WLgfX.net
え?じゃどうなるの

386:デフォルトの名無しさん
16/06/19 13:12:56.80 B5ThVt/J.net
いやいや2番目が正しいから

387:デフォルトの名無しさん
16/06/19 14:35:17.43 Pvc+naRU.net
>>382
3番目が正しくないと言うなら理由を述べよ

388:デフォルトの名無しさん
16/06/19 14:52:18.35 BJk1t5UN.net
constってどれ? と訊かれているのだから
「4つ有る内の2番目と3番目」と答えるのが適切だろう

389:デフォルトの名無しさん
16/06/19 16:32:34.55 X+E3gNs8.net
>>379
あ�


390:ュまで文字列リテラルのconst性という観点で、 1は無意味 2で必要十分 3は問題ないがやり過ぎ



391:デフォルトの名無しさん
16/06/19 16:51:30.97 BJk1t5UN.net
もとの型と違う型を持ち出してこれがやり過ぎだとかこれが必要だとか比べることがナンセンス

392:デフォルトの名無しさん
16/06/19 17:30:57.56 M8laUYVX.net
>>384
4つ?

393:デフォルトの名無しさん
16/06/19 18:52:28.71 BJk1t5UN.net
>>387
選択肢として挙げられているconstはどう見ても4つだろう
まさかconstがどれかという問いに対して「宣言」が選択肢足りうると思ったわけではあるまい

394:デフォルトの名無しさん
16/06/19 20:14:06.15 KC3RPfxA.net
江添に訊いてみよう

395:デフォルトの名無しさん
16/06/19 21:45:09.20 ajb9eU41.net
URLリンク(ideone.com)
このソースコードのmain関数の1行目で
コピーコンストラクタが呼ばれないのなんで?

396:デフォルトの名無しさん
16/06/19 21:49:43.08 BJk1t5UN.net
↓RVOとNRVOについてウン畜を語りたい老人がどうぞ

397:デフォルトの名無しさん
16/06/19 22:09:36.77 idCoDJUd.net
URLリンク(blogs.wankuma.com)
懐かしいな

398:デフォルトの名無しさん
16/06/19 22:29:52.44 BJk1t5UN.net
エピステーメーって高橋昌との共著本読んだ時 あんま賢くなさそうなイメージだったけど
>>392読んでやっぱり残念な人と確信した
言語仕様通りだって教えて貰っているのに「俺の意図した挙動にならないならメッセージ出せ」とはこれ如何に

399:デフォルトの名無しさん
16/06/19 23:34:41.79 /rk5wqNm.net
>>393
残念じゃないお前がこんな所でくすぶってないで表にでて引っ張って行ってくれよ

400:デフォルトの名無しさん
16/06/19 23:58:21.43 7VaTh5p9.net
いいからもうやめなさい
くだらない個人攻撃なんて何の益にもならないぞ

401:デフォルトの名無しさん
16/06/20 01:50:54.72 NuZBuJrx.net
今日の残念君はどう考えても
ID:BJk1t5UN
だろう…
ちょっと思い込みが強めでトラブルを起こしやすい性格とみた

402:デフォルトの名無しさん
16/06/22 08:16:41.31 ZvEtCXKH.net
リンク先読んでみたけど、確かにちょっと残念な主張だとは思った
そんなので警告出してたら、strict aliasing ruleとかで
「エイリアスが存在しないと仮定して最適化してますよ」って警告出すのか、とか
「使えるキャスト演算子が存在しないので、コンストラクタを利用してキャストしましたよ」とか
「削除できるコンストラクタの呼び出しを削除しましたよ」とかも
全部警告出せって言うのか?みたいになってくる
D&Eで言うところの「無視してよいムカつく警告」になってしまったら警告の意味がない
和訳D&Eをありがたく読んだ自分は個人攻撃するつもりはないけどw
>>393の言ってる内容はそんなおかしくないだろ

403:デフォルトの名無しさん
16/06/23 16:40:05.61 tfrufgXX.net
test1の中でa3をNULLで初期化すればaもNULLになると思ってずっと悩んでいたorz
aとa1とa3は全部アドレス違うんだな
void test1(int* a1, int* &a2)
{
int* a3 = a1;
cout << "&a1 = " << &a1 << endl;
cout << "&a2 = " << &a2 << endl;
cout << "&a3 = " << &a3 << endl;
}
void main()
{
int* a = new int;
cout << "&a = " << &a << endl;
test1(a, a);
}
実行結果
&a = 0037FBC0
&a1 = 0037FAAC
&a2 = 0037FBC0
&a3 = 0037FA9C

404:デフォルトの名無しさん
16/06/23 18:49:05.25 hDCQS7+v.net
void test1(int a1, int& a2)
{
int a3 = a1;
...
}
void main()
{
int a;
test1(a, a);
}
本質的にコレと変わってないから test1 中の a3 への代入操作が a1 に副作用をおこすわけもなく。。。

405:デフォルトの名無しさん
16/06/23 18:49:08.79 05qDBgT1.net
ポインタの参照という発想はなかった

406:デフォルトの名無しさん
16/06/23 19:26:00.29 NYguqjEm.net
>>400
ただの二重ポインタと思えばどうということはない

407:デフォルトの名無しさん
16/06/23 19:59:41.85 tfrufgXX.net
>>399
冷静に考えるとそうなんだけどねw
>>400
そういえばCだと参照型が使えないからこんな感じにしないといけないんだね
void test1(int** b)
{
cout << "b = " << b << endl;
}
void main()
{
int* a = new int;
int** b = &a;
test1(b);
}
実行結果
&a = 0030FCFC
b = 0030FCFC

408:デフォルトの名無しさん
16/06/23 21:55:39.45 mt4LdPj3.net
The definition void main() is not and never has been C++, nor has it even been C.
URLリンク(www.stroustrup.com)

409:デフォルトの名無しさん
16/06/23 22:55:05.52 oSyscJ3H.net
>>403
これほんとなん?
少なくともc11のドラフト(n1570)には
5.1.2.2.3のなかに
If the return type is not compatible with int, the
termination status returned to the host environment is unspecified.
って記述があってmainがint以外を返すことを想定した文があるし
mainを実装定義なやり方で定義していいとも書いてあるよね(5.1.2.2.1)

410:デフォルトの名無しさん
16/06/23 23:20:43.24 EoZOdS2q.net
>>404
ハゲは昔から嘘つきなのに
規格よりハゲを信じるのかおまいは

411:デフォルトの名無しさん
16/06/23 23:36:09.28 EoZOdS2q.net
ちなみにその部分の内容は
N1570でもISO/IEC 9899:2011でもISO/IEC 9899:1999(ハゲの引用している版)でも同じ

412:デフォルトの名無しさん
16/06/24 00:45:14.65 g2DBgxjd.net
void main() は retrurn 0; を補うんじゃなかたけ。

413:デフォルトの名無しさん
16/06/24 00:48:40.52 JvoE7KJi.net
voidでいいやってことか

414:デフォルトの名無しさん
16/06/24 01:13:53.83 y7sMhfDD.net
>>405
やっぱそうなのね
信じられるのは規格だけやな

415:デフォルトの名無しさん
16/06/24 01:22:25.90 g2DBgxjd.net
最初っからint main(){return 0;}
って覚えとけば楽。

416:デフォルトの名無しさん
16/06/24 02:46:26.20 WCTlIu5+.net
そのreturn 0;いらねーよ

417:デフォルトの名無しさん
16/06/24 03:17:37.41 KfxfBd4P.net
URLリンク(qiita.com)

418:デフォルトの名無しさん
16/06/24 03:21:04.30 KfxfBd4P.net
で、void main()と書いたお前らの処理系ではそう定義されてるんか?って話だな

419:デフォルトの名無しさん
16/06/24 03:43:20.14 WCTlIu5+.net
定義???????????????

420:デフォルトの名無しさん
16/06/24 03:51:22.54 KfxfBd4P.net
>>414
?????
バカにもわかりやすく書くとC99でもvoid mainとプログラマが勝手に型を変えていいわけじゃない。コンパイラやら実行環境含めた処理系に自由を与えてるだけ

421:デフォルトの名無しさん
16/06/24 05:02:05.13 WCTlIu5+.net
>>415
バカにもわかりやすく質問してやると、
お前の定義という単語に対する認識は大丈夫か?
って事なんだが

422:デフォルトの名無しさん
16/06/24 12:39:45.04 SkciSi5S.net
>>416
?????

423:デフォルトの名無しさん
16/06/24 13:17:10.64 hNKdYhKF.net
入門者です
ココで、述べられている『ハゲ』とは、誰のことなのですか?
教えてください

424:デフォルトの名無しさん
16/06/24 13:37:04.83 g5yuDP9p.net
ハゲは心の中にいる
今はそれで充分だ

425:デフォルトの名無しさん
16/06/24 13:57:34.07 uayR24vt.net
>>418
>>403の記事を書いたハゲ
c++を設計したえらいハゲだよ

426:418
16/06/24 15:05:36.29 hNKdYhKF.net
>>420
ありがとうございました。
ビャーネ・ストロヴストルップって人ですね!
確かに禿げてましたww
URLリンク(www.stroustrup.com)


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch