C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
前
http://mevius.2ch.net/test/read.cgi/tech/1494508803/
http://www.geocities.jp/c_cpp_cs/about_c/
C言語なら俺に聞け 141 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/07/17(月) 21:06:47.63ID:J4JGo3XO367デフォルトの名無しさん
2017/07/29(土) 08:53:25.58ID:ULoSSJ2b368デフォルトの名無しさん
2017/07/29(土) 08:54:11.31ID:TpFswTs0 > そこそこ行けるしね
と書くとアンダーラインになるのか?
と書くとアンダーラインになるのか?
369デフォルトの名無しさん
2017/07/29(土) 08:55:16.84ID:TpFswTs0 マクロでもそこそこ行けるしね
そこそこ行けるしね
行けるしね
そこそこ行けるしね
行けるしね
370デフォルトの名無しさん
2017/07/29(土) 09:20:46.96ID:zJVnUUbX >>366
続きってなんだよ w
2分木なら双方向リストと同じだぞ w
struct List_t {
struct List_t *Left;
struct List_t *Right;
double Data;
};
続きってなんだよ w
2分木なら双方向リストと同じだぞ w
struct List_t {
struct List_t *Left;
struct List_t *Right;
double Data;
};
371デフォルトの名無しさん
2017/07/29(土) 09:21:39.47ID:zJVnUUbX >>368
アンダーライン w
アンダーライン w
372デフォルトの名無しさん
2017/07/29(土) 09:28:06.03ID:14mINgXT ん?
二分木なら3個とつながってるから、
普通3個リンクを張る
二分木なら3個とつながってるから、
普通3個リンクを張る
373デフォルトの名無しさん
2017/07/29(土) 09:29:28.03ID:dTbBo9oQ374デフォルトの名無しさん
2017/07/29(土) 09:29:42.67ID:14mINgXT あと、色情報も普通はつける
375デフォルトの名無しさん
2017/07/29(土) 09:43:22.80ID:N+YJafLA376デフォルトの名無しさん
2017/07/29(土) 09:43:31.26ID:zJVnUUbX377デフォルトの名無しさん
2017/07/29(土) 09:45:52.74ID:zJVnUUbX378デフォルトの名無しさん
2017/07/29(土) 09:49:09.48ID:zJVnUUbX379デフォルトの名無しさん
2017/07/29(土) 09:54:12.77ID:N+YJafLA ポインタを進めたり戻したりする必要がなければ
親にリンクを張らなくてもいいけどさ
std::setと同等なものをイメージしたけど、
まったく違うものが突然出てきたわけね
親にリンクを張らなくてもいいけどさ
std::setと同等なものをイメージしたけど、
まったく違うものが突然出てきたわけね
380デフォルトの名無しさん
2017/07/29(土) 09:59:21.62ID:N+YJafLA381デフォルトの名無しさん
2017/07/29(土) 09:59:54.86ID:N+YJafLA おれの読解力が無さすぎるのか、
説明がなさすぎるのか、
説明がなさすぎるのか、
382デフォルトの名無しさん
2017/07/29(土) 10:08:25.24ID:RY+TGg1x383デフォルトの名無しさん
2017/07/29(土) 10:11:31.61ID:dTbBo9oQ >>377
それいうならリストの中身void*にするのもそこまで安易な選択ってわけでもあるまいに
それいうならリストの中身void*にするのもそこまで安易な選択ってわけでもあるまいに
384デフォルトの名無しさん
2017/07/29(土) 10:14:10.31ID:gxbujSGs385デフォルトの名無しさん
2017/07/29(土) 10:17:23.70ID:N+YJafLA386デフォルトの名無しさん
2017/07/29(土) 10:20:56.53ID:N+YJafLA >>370で二分木の話が出た
もっと上ではsetの話が出ている
もっと上ではsetの話が出ている
387デフォルトの名無しさん
2017/07/29(土) 10:22:31.80ID:N+YJafLA388デフォルトの名無しさん
2017/07/29(土) 10:26:44.77ID:N+YJafLA まあいずれにしろ、>>289 は無いな
389デフォルトの名無しさん
2017/07/29(土) 10:31:03.43ID:zJVnUUbX >>383
ソート使うのにmalloc/freeは要らんだろ
ソート使うのにmalloc/freeは要らんだろ
390デフォルトの名無しさん
2017/07/29(土) 10:35:15.55ID:dTbBo9oQ >>389
リストなんてどうせmalloc/free使って運用するし別によくね?
リストなんてどうせmalloc/free使って運用するし別によくね?
391デフォルトの名無しさん
2017/07/29(土) 10:36:49.65ID:gxbujSGs392デフォルトの名無しさん
2017/07/29(土) 10:37:38.60ID:zJVnUUbX393デフォルトの名無しさん
2017/07/29(土) 10:37:49.78ID:N+YJafLA394デフォルトの名無しさん
2017/07/29(土) 10:39:22.96ID:N+YJafLA >>392
なんだ、結局おれ以外も会話が通じてないんじゃん
なんだ、結局おれ以外も会話が通じてないんじゃん
395デフォルトの名無しさん
2017/07/29(土) 10:40:24.22ID:zJVnUUbX >>390
まあお前がいいと思うならそうすればいいんじゃね?
まあお前がいいと思うならそうすればいいんじゃね?
396デフォルトの名無しさん
2017/07/29(土) 10:41:41.06ID:N+YJafLA397デフォルトの名無しさん
2017/07/29(土) 10:42:46.56ID:N+YJafLA398デフォルトの名無しさん
2017/07/29(土) 10:47:50.62ID:N+YJafLA399デフォルトの名無しさん
2017/07/29(土) 10:48:39.76ID:N+YJafLA 「普通は」とか書くと反論がくるのかな
「多くは」くらいにしておくか
「多くは」くらいにしておくか
400デフォルトの名無しさん
2017/07/29(土) 10:58:06.68ID:N+YJafLA401デフォルトの名無しさん
2017/07/29(土) 11:00:17.42ID:gxbujSGs >>392
> ノードに値とリストのどちらかを入れられるリストと言う要件だと思ったが?
いや、そう明示されているわけではないよな?
次に、それが要件だったとして、或いは汎用化するために void* だろってのが皆の意見だ。
ここについては俺はいちいちキャストがウザいからデータはめ込み派(君と同じ)だが。
> ノードに値とリストのどちらかを入れられるリストと言う要件だと思ったが?
いや、そう明示されているわけではないよな?
次に、それが要件だったとして、或いは汎用化するために void* だろってのが皆の意見だ。
ここについては俺はいちいちキャストがウザいからデータはめ込み派(君と同じ)だが。
402デフォルトの名無しさん
2017/07/29(土) 11:09:28.10ID:VkCqDRe3 Cばかり使っていると頭がこんなんなっちゃいます。
403デフォルトの名無しさん
2017/07/29(土) 11:11:38.53ID:N+YJafLA void* の問題はキャストもそうだけど
外部でメモリを管理する必要があるってところが大きいかと
多重リストだろうがunionだろうが
マクロでどうにでもなるんで
わざわざ不便な作りにする必要は無いかと
外部でメモリを管理する必要があるってところが大きいかと
多重リストだろうがunionだろうが
マクロでどうにでもなるんで
わざわざ不便な作りにする必要は無いかと
404デフォルトの名無しさん
2017/07/29(土) 11:13:16.21ID:N+YJafLA405デフォルトの名無しさん
2017/07/29(土) 11:14:41.46ID:eThbJX9n (単方向)リストは先頭から終端の方向へ順にポインタを辿る、逆方向のポインタは無くても可(逆方向があるのは双方向リスト)
二分木は根から葉の方向へ再帰でポインタを辿る、親方向のポインタは無くても可(むしろ無いのが普通)
二分木は根から葉の方向へ再帰でポインタを辿る、親方向のポインタは無くても可(むしろ無いのが普通)
406デフォルトの名無しさん
2017/07/29(土) 11:16:39.02ID:gxbujSGs407デフォルトの名無しさん
2017/07/29(土) 11:16:58.24ID:N+YJafLA Cってパフォーマンスを落としてまで汎用化するような使い方ってあまりしないしね
基本組み込み用
リストも片方向で済むなら片方向にするし、
そもそもリスト構造自体頻繁に使うようなものじゃない
基本組み込み用
リストも片方向で済むなら片方向にするし、
そもそもリスト構造自体頻繁に使うようなものじゃない
408デフォルトの名無しさん
2017/07/29(土) 11:18:34.04ID:N+YJafLA だから、
Cで挫折する理由が「リスト」とかいう主張、
まったくチンプンカンプンで
Cで挫折する理由が「リスト」とかいう主張、
まったくチンプンカンプンで
409デフォルトの名無しさん
2017/07/29(土) 11:19:32.62ID:zJVnUUbX >>401
> いや、そう明示されているわけではないよな?
で、君は
> 連結リストの中に連結リストとか自由にやりたい
をどう解釈してマクロでやるって言ってるの?
> 次に、それが要件だったとして、或いは汎用化するために void* だろってのが皆の意見だ。
皆の意見? w
> いや、そう明示されているわけではないよな?
で、君は
> 連結リストの中に連結リストとか自由にやりたい
をどう解釈してマクロでやるって言ってるの?
> 次に、それが要件だったとして、或いは汎用化するために void* だろってのが皆の意見だ。
皆の意見? w
410デフォルトの名無しさん
2017/07/29(土) 11:21:33.18ID:N+YJafLA >>406
要件次第で変わるのに「同じ」と言ってしまう
要件次第で変わるのに「同じ」と言ってしまう
411デフォルトの名無しさん
2017/07/29(土) 11:23:02.49ID:N+YJafLA412デフォルトの名無しさん
2017/07/29(土) 11:26:20.62ID:gxbujSGs >>409
俺なら型ごとにstructを用意、つまりテンプレートと同じことをする、ということ。
ただしvoid*にしろって言う意見も分かるし、C的にはそれもありだと思うぞ。
ここら辺は好みの範囲だとは思うが。
俺なら型ごとにstructを用意、つまりテンプレートと同じことをする、ということ。
ただしvoid*にしろって言う意見も分かるし、C的にはそれもありだと思うぞ。
ここら辺は好みの範囲だとは思うが。
413デフォルトの名無しさん
2017/07/29(土) 11:30:42.93ID:N+YJafLA >>405
無いのが普通って
世の中を知らなすぎる
汎用のコンテナとしての2分木で
そういう実装な例があるなら
示していただけると
出来れば有名どころで
親がないと、ポインタを一個進めるのもコストがかかる
挿入した時に左右のバランスを保つのにもコストがかかる
もちろん、そういう処理がいらない
コンテナとして使わないような
特殊用途の2分木ならいくらでもあるだろうけど
今はコンテナの話だよね
無いのが普通って
世の中を知らなすぎる
汎用のコンテナとしての2分木で
そういう実装な例があるなら
示していただけると
出来れば有名どころで
親がないと、ポインタを一個進めるのもコストがかかる
挿入した時に左右のバランスを保つのにもコストがかかる
もちろん、そういう処理がいらない
コンテナとして使わないような
特殊用途の2分木ならいくらでもあるだろうけど
今はコンテナの話だよね
414デフォルトの名無しさん
2017/07/29(土) 11:30:53.18ID:zJVnUUbX415デフォルトの名無しさん
2017/07/29(土) 11:32:58.28ID:N+YJafLA 例えばstd::setの実装はすべて親へのリンクがある
416デフォルトの名無しさん
2017/07/29(土) 11:36:13.86ID:gxbujSGs >>414
インラインマクロでゴリゴリに対応するのではなくて、
structの宣言部分をマクロ化して、
MyList(MyListDouble, double)
MyList(MyListInt, int)
で量産する、ということ。つまりテンプレートだろこれは。
インラインマクロでゴリゴリに対応するのではなくて、
structの宣言部分をマクロ化して、
MyList(MyListDouble, double)
MyList(MyListInt, int)
で量産する、ということ。つまりテンプレートだろこれは。
417デフォルトの名無しさん
2017/07/29(土) 11:44:36.57ID:N+YJafLA コードサイズが大きい時は、
名前と型をdefineしてからinclude
とか良くやる
defineやincludeは上のMyListみたいなマクロで
名前と型をdefineしてからinclude
とか良くやる
defineやincludeは上のMyListみたいなマクロで
418デフォルトの名無しさん
2017/07/29(土) 11:59:50.67ID:ODSH1Ehs419デフォルトの名無しさん
2017/07/29(土) 12:00:47.71ID:EGnuLLJd いつからコンテナの話になったんや
420デフォルトの名無しさん
2017/07/29(土) 12:09:46.80ID:14mINgXT >>418
型ならなんでも良い
型ならなんでも良い
421デフォルトの名無しさん
2017/07/29(土) 12:10:50.91ID:14mINgXT >>419
最初からずっと
最初からずっと
422デフォルトの名無しさん
2017/07/29(土) 12:13:39.65ID:14mINgXT ていうか
コンテナじゃない2分木はあるけど、
コンテナじゃないリストなんて無いだろ
初期化リストか?
コンテナじゃない2分木はあるけど、
コンテナじゃないリストなんて無いだろ
初期化リストか?
423デフォルトの名無しさん
2017/07/29(土) 12:22:33.90ID:EGnuLLJd コンテナの定義に詳しくないんだけど、Lispのリストはコンテナなん?
424デフォルトの名無しさん
2017/07/29(土) 12:24:27.13ID:vlC06Wfm このスレは1000までリストの話で埋まりそうだね。物凄いスピードで。
425デフォルトの名無しさん
2017/07/29(土) 12:35:38.98ID:gxbujSGs426デフォルトの名無しさん
2017/07/29(土) 12:48:00.97ID:TYuY3Yui >>420
単にunion使わずに(メモリー気にせずに)struct使うって話?
単にunion使わずに(メモリー気にせずに)struct使うって話?
427デフォルトの名無しさん
2017/07/29(土) 12:51:34.43ID:QBDV3ETd あんなあおまいら・・
これ、コレクションをライブラリとして持てという
あるいはそれをどう作るかという話なんだわ
例をあげれば、AppleのCFMutableArray
Win32ならなんだ?
これ、コレクションをライブラリとして持てという
あるいはそれをどう作るかという話なんだわ
例をあげれば、AppleのCFMutableArray
Win32ならなんだ?
428デフォルトの名無しさん
2017/07/29(土) 13:02:32.44ID:14mINgXT >>426
型ごとに作るってこと
型ごとに作るってこと
429デフォルトの名無しさん
2017/07/29(土) 13:09:06.48ID:TYuY3Yui430デフォルトの名無しさん
2017/07/29(土) 13:09:40.87ID:14mINgXT MyList(MyListDouble, double)
MyList(MyListMyListDouble, MyListDouble)
MyList(MyListMyListDouble, MyListDouble)
431デフォルトの名無しさん
2017/07/29(土) 13:11:30.55ID:gxbujSGs >>427
C的には、
> コレクションをライブラリとして持て
いらんわ
> あるいはそれをどう作るか
必要なら自分で作るし苦労もしない
だと思うぞ。もちろんC++使ってもいいし、今更だろ。
ただそれ以前に、現実として、動的キー(辞書)が必要な用途はあまりないだろ。
Cの担当範囲なら、ほぼ全ての場合で構造体(静的キー)と配列で間に合う。(鶏と卵ではあるが)
もちろんこれら含めて汎用化したほうが楽だが、その分遅いのがLL言語な訳で。
C的には、
> コレクションをライブラリとして持て
いらんわ
> あるいはそれをどう作るか
必要なら自分で作るし苦労もしない
だと思うぞ。もちろんC++使ってもいいし、今更だろ。
ただそれ以前に、現実として、動的キー(辞書)が必要な用途はあまりないだろ。
Cの担当範囲なら、ほぼ全ての場合で構造体(静的キー)と配列で間に合う。(鶏と卵ではあるが)
もちろんこれら含めて汎用化したほうが楽だが、その分遅いのがLL言語な訳で。
432デフォルトの名無しさん
2017/07/29(土) 13:17:05.76ID:QBDV3ETd >>431
まあC++使えば済む話でもあるからな
まあC++使えば済む話でもあるからな
433デフォルトの名無しさん
2017/07/29(土) 13:27:26.48ID:gxbujSGs >>429
> unionになんかトラウマでもあるのか?
いやお前少しは他言語もやれよ。
unionは他言語では廃止されている。理由はいろいろまずいから。
ググれば出て来るからやってみ。
まあそれ以前に君はunionの使い方を間違っている。
あれは、リード/ライトで型が違うときに使うものであって、
型違いだがサイズが同じだから突っ込む、という為の物ではない。
というか後者ならvoid*で受けていちいちキャストするというのが正しい。
しかしこれだと型チェックできなくなるからテンプレートにしろというのがC++だ。
> unionになんかトラウマでもあるのか?
いやお前少しは他言語もやれよ。
unionは他言語では廃止されている。理由はいろいろまずいから。
ググれば出て来るからやってみ。
まあそれ以前に君はunionの使い方を間違っている。
あれは、リード/ライトで型が違うときに使うものであって、
型違いだがサイズが同じだから突っ込む、という為の物ではない。
というか後者ならvoid*で受けていちいちキャストするというのが正しい。
しかしこれだと型チェックできなくなるからテンプレートにしろというのがC++だ。
434デフォルトの名無しさん
2017/07/29(土) 13:29:31.36ID:N+YJafLA 形別 > union > void*
こうだな
もちろんサイズにもよるが
こうだな
もちろんサイズにもよるが
435デフォルトの名無しさん
2017/07/29(土) 13:30:38.44ID:N+YJafLA >>433
goto嫌いと同じにおいが
goto嫌いと同じにおいが
436デフォルトの名無しさん
2017/07/29(土) 13:32:15.53ID:N+YJafLA 何度も書くけど、
外でメモリ確保解放強制はあり得ない
外でメモリ確保解放強制はあり得ない
437デフォルトの名無しさん
2017/07/29(土) 13:33:45.21ID:N+YJafLA >>433
サイズが同じ?
サイズが同じ?
438デフォルトの名無しさん
2017/07/29(土) 13:34:53.52ID:N+YJafLA unionの使い方は1つじゃないよ
439デフォルトの名無しさん
2017/07/29(土) 13:41:10.88ID:gxbujSGs >>432
Cは大前提としてそれがあるんだよ。
不満があればC++で大体事足り、それがbetterCだ。(俺の認識では)
つまり、リストが欲しいけど自分で作るのは面倒、だったらここだけC++使うか、って場合。
Cは大前提としてそれがあるんだよ。
不満があればC++で大体事足り、それがbetterCだ。(俺の認識では)
つまり、リストが欲しいけど自分で作るのは面倒、だったらここだけC++使うか、って場合。
440デフォルトの名無しさん
2017/07/29(土) 13:53:49.23ID:E5EEKRTu >>433
> あれは、リード/ライトで型が違うときに使うものであって、
> 型違いだがサイズが同じだから突っ込む、という為の物ではない。
まあ確かにお前はunion使わない方がいいわ w
一応言っておくけど読み書きで型が違ったら値は保証されないよ
> あれは、リード/ライトで型が違うときに使うものであって、
> 型違いだがサイズが同じだから突っ込む、という為の物ではない。
まあ確かにお前はunion使わない方がいいわ w
一応言っておくけど読み書きで型が違ったら値は保証されないよ
441デフォルトの名無しさん
2017/07/29(土) 13:54:39.36ID:YB2Y7dkJ union なくなると XEvent 困るだろう
442デフォルトの名無しさん
2017/07/29(土) 14:04:10.84ID:uK1pt60X unionて、メモリを節約できるのとそのメンバが同時に使われないってことがわかりやすいくらいだよな。
>>364もべつにunion使わなくてもいいわけだし。
>>364もべつにunion使わなくてもいいわけだし。
443デフォルトの名無しさん
2017/07/29(土) 14:11:28.22ID:gp3BUyJn バズワード使うだけあってレベル低すぎる。>>433
444デフォルトの名無しさん
2017/07/29(土) 14:20:45.06ID:gxbujSGs445デフォルトの名無しさん
2017/07/29(土) 14:21:28.04ID:ULoSSJ2b union を使ったら見通しよく書けるのか?そうなのか?不思議な気分だ
よかったらサンプルコードを書いてほしい
よかったらサンプルコードを書いてほしい
446デフォルトの名無しさん
2017/07/29(土) 14:51:40.09ID:E5EEKRTu447デフォルトの名無しさん
2017/07/29(土) 14:58:48.36ID:E5EEKRTu448デフォルトの名無しさん
2017/07/29(土) 15:15:38.90ID:ULoSSJ2b >>447
それだけではわからないよ、実際に union の Child や Double の値を設定するところを見たいものだ
個人的にはうまくいかないと思っている
たぶんマクロを使うことになるし、マクロを使うんだったら共用体なんか使わないほうがよかった、という結果になりそう
それだけではわからないよ、実際に union の Child や Double の値を設定するところを見たいものだ
個人的にはうまくいかないと思っている
たぶんマクロを使うことになるし、マクロを使うんだったら共用体なんか使わないほうがよかった、という結果になりそう
449デフォルトの名無しさん
2017/07/29(土) 15:26:51.26ID:14mINgXT 何がわからないかわからない
450デフォルトの名無しさん
2017/07/29(土) 15:35:05.11ID:14mINgXT unionは、
普通に同時使用しないメンバに対して使われることもあるが
実際に使う環境を把握した上で
同じアドレスに対して複数のアクセス方法を
用いる場合にも良く使われる
一番あるのが、レジスタの定義
チップメーカーなどがヘッダとして提供したりする
ビットフィールドアクセスやワードアクセスなど、
複数のアクセス方法を使えるようにするため
あとは複数の型へのポインタをunionで定義したり
普通に同時使用しないメンバに対して使われることもあるが
実際に使う環境を把握した上で
同じアドレスに対して複数のアクセス方法を
用いる場合にも良く使われる
一番あるのが、レジスタの定義
チップメーカーなどがヘッダとして提供したりする
ビットフィールドアクセスやワードアクセスなど、
複数のアクセス方法を使えるようにするため
あとは複数の型へのポインタをunionで定義したり
451デフォルトの名無しさん
2017/07/29(土) 15:36:30.30ID:14mINgXT >>364は環境に依存しない、
普通の排他メンバの使い方
普通の排他メンバの使い方
452デフォルトの名無しさん
2017/07/29(土) 15:41:58.78ID:14mINgXT メモリをケチる為のunionは
時代とともに使う頻度は減っているが
複数のアクセス方法の為のunionは普通に使われる
もちろん環境依存コード
例えばWindows APIのLARGE_INTEGERも
この使い方のunion
時代とともに使う頻度は減っているが
複数のアクセス方法の為のunionは普通に使われる
もちろん環境依存コード
例えばWindows APIのLARGE_INTEGERも
この使い方のunion
453デフォルトの名無しさん
2017/07/29(土) 15:46:20.38ID:gp3BUyJn アセンブラじゃ共用が当たり前。だからCにある。それだけ。
x86のレジスタはまんま共用体。ワイヤー数、バス幅に制限があるんだから共用して当たり前。
本来、ハードの仕様を実装するためのもの。
x86のレジスタはまんま共用体。ワイヤー数、バス幅に制限があるんだから共用して当たり前。
本来、ハードの仕様を実装するためのもの。
454デフォルトの名無しさん
2017/07/29(土) 16:09:53.11ID:N+YJafLA なんか違う
455デフォルトの名無しさん
2017/07/29(土) 16:11:44.21ID:gxbujSGs >>449
まず大前提としてコードを再利用する仮定だ。
ベタにコピペした場合は関係ない。
>>364のunionは今なら継承で実装されることが多いはずだ。
当然Dataはテンプレート化され、
Previous,Nextへの書き込みは基底クラス、Dataへの書き込みは派生クラスに配置される。
これがC++的解決。
unionだと一見何でも書けるように見えるが、
実際は派生型を手動で扱っているのと同等なので、
共通書き込みルーチンを用意できない。これが>>448の言う、
> 個人的にはうまくいかないと思っている
で、俺もそう思う。
マクロを強引に使えば出来るかもしれんが、それなら上記C++的解決の方がマシ。
>>452
> メモリをケチる為のunionは
> 時代とともに使う頻度は減っているが
これって>>364の使い方、ということでいいのか?
それならC++的に言えば、
糞だからクラステンプレートと継承で対応できるようにして廃止した、というところだろう。
> 複数のアクセス方法の為のunionは普通に使われる
多分これ以外のunionは必要ない。
そして俺はこれについてはリート/ライトで型が違っても値が保証されていると認識している。
(一応言っておくが同じ値が読めるという意味ではない。《>>446の馬鹿は多分この勘違い》
プログラマから見て値が確定的、という意味だ。)
仕様に詳しい奴がいればよろしく。
まず大前提としてコードを再利用する仮定だ。
ベタにコピペした場合は関係ない。
>>364のunionは今なら継承で実装されることが多いはずだ。
当然Dataはテンプレート化され、
Previous,Nextへの書き込みは基底クラス、Dataへの書き込みは派生クラスに配置される。
これがC++的解決。
unionだと一見何でも書けるように見えるが、
実際は派生型を手動で扱っているのと同等なので、
共通書き込みルーチンを用意できない。これが>>448の言う、
> 個人的にはうまくいかないと思っている
で、俺もそう思う。
マクロを強引に使えば出来るかもしれんが、それなら上記C++的解決の方がマシ。
>>452
> メモリをケチる為のunionは
> 時代とともに使う頻度は減っているが
これって>>364の使い方、ということでいいのか?
それならC++的に言えば、
糞だからクラステンプレートと継承で対応できるようにして廃止した、というところだろう。
> 複数のアクセス方法の為のunionは普通に使われる
多分これ以外のunionは必要ない。
そして俺はこれについてはリート/ライトで型が違っても値が保証されていると認識している。
(一応言っておくが同じ値が読めるという意味ではない。《>>446の馬鹿は多分この勘違い》
プログラマから見て値が確定的、という意味だ。)
仕様に詳しい奴がいればよろしく。
456デフォルトの名無しさん
2017/07/29(土) 16:26:09.19ID:mj0H/MXI 初期化リストの話は終わったのか?
457デフォルトの名無しさん
2017/07/29(土) 16:38:11.08ID:Y1dtbxTh >>456
今union、次extern
今union、次extern
458デフォルトの名無しさん
2017/07/29(土) 16:51:08.52ID:ULoSSJ2b459デフォルトの名無しさん
2017/07/29(土) 17:00:18.71ID:ULoSSJ2b >>449 全部がわからない:−)
>>364 の方針で >>357 を書いてくれる人はいないものか
ちょっと想像がつかないんだ
void *data 派であるけれどもマクロの方はわかる、工藤智行氏の書籍にてさんざんやっていたからね https://www.amazon.co.jp/dp/4774100544/
>>364 の方針で >>357 を書いてくれる人はいないものか
ちょっと想像がつかないんだ
void *data 派であるけれどもマクロの方はわかる、工藤智行氏の書籍にてさんざんやっていたからね https://www.amazon.co.jp/dp/4774100544/
460デフォルトの名無しさん
2017/07/29(土) 17:05:21.12ID:zJVnUUbX >>455
よく知らないなら黙ってりゃいいのに w
よく知らないなら黙ってりゃいいのに w
461デフォルトの名無しさん
2017/07/29(土) 17:05:34.42ID:EGnuLLJd 共用体なんて使うとしたら、sdl_eventと同じように、enumとセットだろ〜?
462デフォルトの名無しさん
2017/07/29(土) 17:29:39.44ID:Xv3aO8mX トリコロシ
463デフォルトの名無しさん
2017/07/29(土) 17:35:09.29ID:CXR2+t0L COBOLだとレベル番号で同じことが出来るね
464デフォルトの名無しさん
2017/07/29(土) 17:35:29.83ID:zJVnUUbX465デフォルトの名無しさん
2017/07/29(土) 17:37:42.13ID:14mINgXT466デフォルトの名無しさん
2017/07/29(土) 17:41:42.52ID:gxbujSGs■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【おこめ】「有能だったんじゃ」おこめ券で批判殺到の鈴木農水大臣…ネットでは前任の“進次郎再評価” ★2 [ぐれ★]
- 「暖房が使えない」「食費が高くて子どもの栄養が…」 物価高に苦しむ子育て世帯、政府に期待する支援は ★2 [蚤の市★]
- オイルマッサージ施術中20代女性にわいせつ行為か セラピストの男(30)を再逮捕 余罪複数とみて警視庁が捜査 [どどん★]
- 内閣支持、微減59.9% 5割超が補正予算評価 時事通信世論調査 [どどん★]
- 【中国外務省】日本への渡航自粛を再度呼びかけ 今度は「地震発生」を理由に [ぐれ★]
- 日本語が話せない「外国籍」の子が急増中、授業がストップ、教室から脱走も…先生にも大きな負担「日本語支援」追いつかず★3 [七波羅探題★]
- 高市内閣の支持率、下落wwwwwwwwwww [834922174]
- お前ら嫁や彼女にセックス中にどんな声がけしてる? [369521721]
- Vtuber「人気アニメとコラボします!」←これでVが叩かれるの謎じゃね
- Xでフォローしてきた人をフォロバして相手のフォロー解除するのが趣味なんだが
- あー…女児のつるつるまんまん舐め回してえなあ…
- 愛国者「徴兵されるのは嫌。でも敵が侵略してきたら考えます」 [834922174]
