C++相談室 part153

■ このスレッドは過去ログ倉庫に格納されています
2020/10/10(土) 23:18:20.00ID:i4F+i14Y
https://mevius.5ch.net/test/read.cgi/tech/1589424805/
※前スレ
C++相談室 part152
https://mevius.5ch.net/test/read.cgi/tech/1594528940/

テンプレおしまい
2020/10/14(水) 18:53:52.73ID:qpMvVLdo
>>147
数学で言う関数は関数型じゃないよ。
写像とか勉強したら?
2020/10/14(水) 19:16:14.41ID:fAfIBrSZ
>>173
> fill(dim, 2, 98, 0); //引数4個
> 98は個数だと認識して書いた。

間違いにくいとか、間違えやすいとか、
それはおまえさんの個人的なことじゃねえかよ

配列と個数で渡すのが、始点と終点で渡すことよりも
優位だというのは、おまえさん個人が間違いにくいってことか?

言うまでもないが、俺は間違えずにコード示してて
間違えたのはおまえさんだけだぞ
それを一般論として優位ということにはできんだろ
2020/10/14(水) 19:16:18.40ID:qpMvVLdo
この手の配列の話でrangeが出てこないのはなんで?
最近の標準には疎いけど、この手の問題のほとんどがboost::rangeで解決しない?
178デフォルトの名無しさん
垢版 |
2020/10/14(水) 19:18:22.41ID:d5S3+KHs
@std::list<Path>* pathListをソートするとします…。
Aどっかのメソッドは…void sort(std::list<Path>* pathList)で受けるとします…。
B内部で以下のようにソートするとします…。
pathList->sort([](Path& o1, Path& o2) {
if(o1.getFileName().compare(o2.getFileName()) < 0) {
return true;
} else {
return false;
}
});

このときに!Aメソッドで…void sort(std::list<Path>*& pathList)
としておかないと…なんか気持ち悪いんですが…
なんで参照の値渡しstd::list<Path>*だけで大丈夫なのかメモリアドレスまでは
僕は把握してません…参照の値渡しだけで行くだろうけど…なぜ大丈夫なのか説明できません…。

誰か…。
2020/10/14(水) 19:19:42.63ID:fAfIBrSZ
>>174
長さと個数の混同は「先頭アドレスを渡す」って前提で起きることだよな
dim + 2という例を示したら見事に思う壺にハマるやつがいてワロタ
2020/10/14(水) 20:10:37.92ID:qrfIlgcS
>>178
日本語でどうぞ
2020/10/14(水) 20:23:03.09ID:j1TiW1+l
伝統的なバッドノウハウ
「ニワカなやつほど語りたがる」
ID:lJFXTbVxのことね
2020/10/14(水) 20:37:36.49ID:fAfIBrSZ
俺も本当はもっとおとなしく話すつもりだったのに
エキスパートとかプリティ発言するから予定外にいじめっちゃうのを余儀なくされたのよ
2020/10/14(水) 20:49:16.68ID:+PdAwU8N
Go や Rust でスライスを言語の基本要素として取り入れたのは
ポインタでやりくりするのが (少なくとも今となっては) あまりイケてない方式
という判断があってのことなんだろうな。
2020/10/14(水) 20:55:00.69ID:j1TiW1+l
ポインタこそが大事
ポインタこそが肝心
Cで一番大事なのはポインタ
C++は知らん
2020/10/14(水) 20:55:45.47ID:z3Ys6y55
>>178
俺はお前さんの文章が「なんか気持ち悪い」よ。
話し言葉もそんな感じなのか?
186デフォルトの名無しさん
垢版 |
2020/10/14(水) 21:04:32.42ID:EoVZjJO9
>>178
https://ideone.com/x1NTqd
std::list<Path>& pathList
でいいじゃん.なぜ
std::list<Path>* pathList
なんだ?
2020/10/14(水) 21:27:18.64ID:eS9CcskG
>>116
なんじゃそりゃ;;
>>116は周りが死ね言うたら死ぬんか…?
2020/10/14(水) 21:35:17.95ID:4qg33D8d
>>178
ポインタの値自体はコピーされるけどその指してる先は同じだから
189デフォルトの名無しさん
垢版 |
2020/10/14(水) 23:24:35.72ID:ssGc8zMA
>>137
aXxxXxxXxxXxxXxxXxxXxxXxxXxxXxx[aXxxXxxXxxXxxXxxXxxXxxXxxXxxXxx_NUM]

これのラッパークラスとかは作らんの?
2020/10/15(木) 00:28:14.53ID:ecxFi3He
begin, lengthでなくてbegin、endになっているのは
具体的に言えばNULL終端の文字列みたいなものにでもゼロコストで対応できるからでしょ
わかりやすさ〜とかそういう感覚的なもの以前の話として、
length案は共通インタフェースを定める目的にあってない
既に上に何人かが同じ内容を書いてるけどなぜわからんかな
2020/10/15(木) 01:29:04.51ID:z3OAjGAN
>>ID:+cbHRaf/
>>120には言い返して来ないんだなww
2020/10/15(木) 06:05:35.87ID:qGtCPYoD
>>187
で、おまえさんの周りには値引数にconstつけてるバカはいたのか、いなかったのか、どっちだ?
2020/10/15(木) 07:48:07.21ID:8g5pkzoR
初心者はぼくちんのコードさえ短くわかりやすくなればそれでいいしそれが正しいと考えがちなので
共通インターフェースの必要性とか重要性は理解以前に想像もできないんだよね
その辺を教え込むのはたいへんだ
2020/10/15(木) 08:40:54.84ID:Rskl+IBz
STLは共通インターフェースの策定の失敗例。
2020/10/15(木) 09:24:37.63ID:vnecXNks
配列ではポインタがイテレータとして機能するし、イテレータとしての要件を満たしてもいる。
そうなるようにデザインされたのは自明だな。

ポインタに合わせて統一したのが全面的に良いとは言えないのかもしれないが、
イテレータの枠組みに配列やポインタを含まないデザインにするというのは
C++ の立場からするとありえない選択でもあるし、
要するに「仕方ない」としか言えんわ。
2020/10/15(木) 14:12:18.99ID:kscRf0sZ
autoないときはイテレータめんどくさかったけど今は別になあ
2020/10/15(木) 14:25:43.71ID:btt8eLo1
もうautoなしでは書けんわ
2020/10/15(木) 15:41:54.19ID:qGtCPYoD
catch(nested_exception& nx)
{
auto C2065_p = dynamic_cast<C2065_t*>(&nx);
auto C2146_p = dynamic_cast<C2146_t*>(&nx);
auto C2653_p = dynamic_cast<C2653_t*>(&nx);
auto C2672_p = dynamic_cast<C2672_t*>(&nx);
}
2020/10/15(木) 17:12:09.30ID:lq1gR0YQ
lengthなんて数行で実装できるじゃんw
自分用のテンプレに入れときゃ解決w
2020/10/15(木) 17:13:29.26ID:ecxFi3He
std::distance
2020/10/15(木) 17:23:04.67ID:qGtCPYoD
ワロタ
2020/10/15(木) 18:27:46.64ID:ZxgioYKc
aXxxxXxxxXxxxXxxxXxxxXxxxXxxxXxxx
↑この時点で手遅れレベルで腐ってるのは誰も指摘してやらないんだなw

>>192
> 値引数にconstつけてるバカ

お題スレで答えてるやつにおったわ
みんなに空気として扱われてたけど
203202
垢版 |
2020/10/15(木) 18:29:24.72ID:ZxgioYKc
俺は>>187じゃなくて横からね
いちおう断っておく
204デフォルトの名無しさん
垢版 |
2020/10/15(木) 19:32:56.49ID:o1whfqB0
思ったほど落ちてなかった
205デフォルトの名無しさん
垢版 |
2020/10/15(木) 19:51:50.58ID:o1whfqB0
>>202
手遅れだからそっとしといた
2020/10/15(木) 20:52:33.99ID:qGtCPYoD
>>203
はいはい横ねー
207デフォルトの名無しさん
垢版 |
2020/10/15(木) 21:25:48.32ID:+lHmSCSK
エディタでは中核のデータであろう文字列の配列が
aXxxxXxxxXxxxXxxxXxxxXxxxXxxxXxxx
っていう名前で、しかもそれとは別に
aXxxxXxxxXxxxXxxxXxxxXxxxYyyyXxxx
みたいな、また別の文字列配列が存在する世界観なんでしょ

しかもそれぞれにどういうワケか
aXxxxXxxxXxxxXxxxXxxxXxxxXxxxXxxx_NUM
aXxxxXxxxXxxxXxxxXxxxXxxxYyyyXxxx_NUM
みたいな定数がdefineされている

それらの配列は
aXxxxXxxxXxxxXxxxXxxxXxxx_NUM
で統一されているわけではない
208デフォルトの名無しさん
垢版 |
2020/10/15(木) 21:33:12.16ID:+lHmSCSK
「変数名を長くすればSTLの書き方ではとても長くなるので、STLの書き方はダメです」
と言うためだけにわざわざ作られた長い名前だから、名前が長い

ダメと言うためにわざわざ作られたダメな例なんだから、そのリクツの中ではSTLがダメなように見えるのは、彼の中では当然だよ
だってダメになるように作られたダメな例だもん
2020/10/15(木) 22:14:19.51ID:LO3W6bS9
頭おかしいのがまた湧いてるな
2020/10/16(金) 05:15:42.21ID:3AzgsKTP
値引数にconstつけてても別にいいと思うけどね
コピーで渡してなおかつconstであることを明示したいなら
むしろconstで引数渡さないって言いはるのは思考停止のバカ
2020/10/16(金) 06:18:41.00ID:y0b2R3Tf
同意
自分はそれ思いつつも、文法上の、狭い関数内だけでのバグ抑止以上の価値は無いだろうと考えて、やってないけど
あえてやってる人が居てもバカにしようとは思わない
2020/10/16(金) 06:43:39.95ID:5553rdQz
>>210
仮引数は変更しないって前提で思考停止してるのはお前だよ
void fill(int* first, int n, int val)
{
while (n--) *first++ = val;
}
関数の定義を別の翻訳単位に分離したら
それこそ定義かくやつだけの問題で
const付けろ付けるなと騒いでも他人の仕事に口出すなってだけ

おまえらと違ってこちとらおまえらごとき論破するのに侮辱語はいらねえ
2020/10/16(金) 06:57:04.56ID:3AzgsKTP
>>212
関数定義について言ってるに決まってるだろ
変更しないっていう前提で固定してるわけじゃないし
妄想激しいね
2020/10/16(金) 07:10:15.57ID:5553rdQz
日本語でおk
2020/10/16(金) 07:21:08.18ID:3AzgsKTP
そうやって僕ちゃんが正しいんだ!
あいつはくそだ!
って一生逃げ回ってろカス
2020/10/16(金) 07:35:25.34ID:5553rdQz
捨て台詞にしちゃ迫力も何もねえなw
2020/10/16(金) 09:55:58.36ID:6oF3ghE4
>>211
同感。いうほど意味はないけどまあ悪いことではないよな、みたいな感覚
2020/10/16(金) 10:02:26.25ID:hiR4Fq2K
>>216
小学生が「やーい、おまえのかーちゃん出べそ」って言うのと似たような感じだな。
昭和の漫画の中にしか存在しないけどw
2020/10/16(金) 12:45:32.25ID:5553rdQz
絵に描くとこんな感じだなw
https://image.middle-edge.jp/medium/e5bfb87b4c39b4617142493862b64455.jpg
2020/10/16(金) 13:05:10.30ID:E37X09wd
今ゲーム開発に向いてるライブラリってなんですか?
これまでdxlibとsiv3dは使ったことありますが今の主流が知りたいです
221デフォルトの名無しさん
垢版 |
2020/10/16(金) 13:42:16.84ID:CKS46Mg3
UE4
2020/10/16(金) 13:45:36.97ID:RKtFr9bS
2次元で良ければ
ama損.co.jp
dp/4899774451
dp/4899775067
dp/4899774117
2020/10/16(金) 14:02:19.57ID:oFLj+i8c
EASTL
2020/10/16(金) 15:10:49.53ID:y0b2R3Tf
>>223
本気で言ってんの?
225デフォルトの名無しさん
垢版 |
2020/10/16(金) 15:15:51.65ID:3AzgsKTP
SFML
2020/10/16(金) 15:18:07.81ID:3AzgsKTP
SDL2 + OpenGL
2020/10/16(金) 16:22:38.33ID:5553rdQz
>>220
ゲームの内容による
Xウイングでタイファイターと戦うようなのもあれば
将棋やウォーゲームみたいのもある
2020/10/16(金) 17:53:05.24ID:y0b2R3Tf
>>227
dxlibとsiv3dに代わるものはあるかと聞かれてんのに的外れ
知ったか乙とでも言って欲しいのか
2020/10/16(金) 17:53:07.57ID:gzagFIoh
>>224
冗談で言ってるとでも?使ったこともないくせに。


俺はないよ
2020/10/16(金) 17:57:48.24ID:8wgq9mv1
>>220
C#に浮気してUnityという手もある。
といっても扱ったの6年前(大学生の頃)だから現ゲーム業界事情は詳しくないが。

てか、この手の質問がでてきたということは、現状の開発に限界を感じているということでは?
2020/10/16(金) 17:58:03.44ID:y0b2R3Tf
知ったかこいてマウント取るしか出来ないアホばっかだな
EASTLがレンダリングとか担ってくれるのかよ
2020/10/16(金) 18:00:30.56ID:gzagFIoh
冗談か通じない奴だな…
2020/10/16(金) 18:04:19.22ID:y0b2R3Tf
嘘つけ

>>220
てかDirectXスレかゲ制作技術板行った方がいいよマジで
ここに住み着いてるのはまともにソフト書き上げたことすら無い奴ばっかだから
2020/10/16(金) 18:14:08.55ID:8wgq9mv1
DirectXって...
ゲーム作る以前に、車輪の再発明して終わりそう。
2020/10/16(金) 18:14:09.24ID:+fSNMqF3
>>228
よく読めよ。
「主流が知りたい」だろ。
代わるものじゃない。
2020/10/16(金) 18:21:09.26ID:y0b2R3Tf
ライブラリの主流は何か=dxlib等に代わるもの、だと思ったんだが
まぁそもそもC++で一から作りたいのか勉強がしたいのか、単に趣味でゲーム作りたいのかわからんから
何とも言えないけど
2020/10/16(金) 19:19:09.58ID:a9PKFHNt
これ以上話も続かなそうだからボカすけど
俺はそれこそがすっごいアホっぽいと思う
C++で言うとイテレータのインクリメントをi++で書いちゃってるのより
必要も無いのにnewしてdeleteしてるのより
それよりももっと恥ずかしいと思う
2020/10/16(金) 20:16:18.37ID:VgjMdtJh
C++/WinRTやってる人いる?
ここの人達はあまりWindows好きじゃないかな
2020/10/16(金) 20:17:19.97ID:YHv0PA1W
winはやまほどいるだろうけどrtは全然おらんのじゃないか
2020/10/16(金) 20:45:00.91ID:VgjMdtJh
だよね
ちょっと自力でがんばってみる!
2020/10/17(土) 01:31:18.67ID:P3PLPttw
>>227
バカのくせに思慮深さを見せようとしてんじゃねえよw
結局オナニーしかできないんだな
2020/10/17(土) 01:53:28.92ID:EbfBq8oa
>>220
dxlib や siv3d (OpenSiv3d) は十分に主流の一翼を担っているように思うが……。
C++ 的には dxlib は設計が古臭い感じはあるかな。

具体的なことが決まっているわけじゃなくて単に他にどんな選択肢があるのか
ということなら、私が知っているのはこれくらい。

https://github.com/altseed/Altseed
http://www.tilengine.org/
https://www.sfml-dev.org/
https://box2d.org/
https://godotengine.org/

Twitter とかで流れてきた話題の中で面白そうなのをちょっとブックマークしていた
という程度なんで具体的に利用してみたことはないんだが、
話題になる程度にはまともな完成度なんだと思う。
2020/10/17(土) 06:29:23.89ID:U3N3/O+C
>>228
235の指摘もそうだが
知ったかって「内容による」と言ったのが
お前さんにはそんなに高度な指摘に聞こえたのか?
手加減しきれねえ相手だなw
2020/10/17(土) 06:31:19.72ID:U3N3/O+C
>>241
バカ?
おまえさんにだけは言われたくねえな

昨日までいじめっちゃったやつだろ
悔しいそうだなw
2020/10/17(土) 06:31:47.44ID:U3N3/O+C
訂正 悔しそうだなw
246デフォルトの名無しさん
垢版 |
2020/10/17(土) 06:40:29.09ID:P3PLPttw
> おまえらと違ってこちとらおまえらごとき論破するのに侮辱語はいらねえ
このあと逆に論破されて小学生みたいな煽りしてたなw
2020/10/17(土) 06:41:48.98ID:P3PLPttw
悔しかったら反論してみろ
2020/10/17(土) 06:51:39.36ID:foE/glNf
>>243
いつものアホだろうから相手したくないんだが
「内容によらない」と言われてんだよ気付けよ
2020/10/17(土) 06:53:17.86ID:P3PLPttw
> おまえらと違ってこちとらおまえらごとき論破するのに侮辱語はいらねえ

https://emotion-ai.userlocal.jp/documents/65ce7e112b0f132f4f46ce2e611994dc/result?nr=1
> 怒りの感情が強い文章です

論破されて怒っちゃったかな?初心者くん
2020/10/17(土) 07:23:58.19ID:U3N3/O+C
>>246
ねえねえ斉藤さん、どれのこと?
具体的なレス番とフレーズ教えてw
2020/10/17(土) 07:25:38.64ID:U3N3/O+C
>>248
うわ、内容によらないって主張か
なるほど、俺の手に負えない超アホだな
2020/10/17(土) 07:27:40.09ID:lpP9BTeB
将棋に向いてるライブラリと向いてないライブラリを具体的に言えばばいいんじゃないの
2020/10/17(土) 07:36:13.01ID:foE/glNf
いやいや、質問者が書いてるのはどちらも3Dの(2Dでも使えるけど)"グラフィックス周りの"ライブラリだぞ
2020/10/17(土) 07:46:35.47ID:lpP9BTeB
いや適当なこと抜かすから将棋に向いたゲームライブラリあるなら上げてみればって言っただけだけど
2020/10/17(土) 08:08:27.37ID:U3N3/O+C
>>254
ゲーム用である必要全然ないね
shogiguiとか中覗いたことある?
2020/10/17(土) 09:39:14.14ID:XiAEb7KG
なんだこのスレ
2020/10/17(土) 09:58:55.16ID:U3N3/O+C
マウント取ろうとして返り討ちに遭ったカブトムシがいるスレです
2020/10/17(土) 10:03:40.12ID:foE/glNf
>>255
ググってみたが既製のソフトやんけ
>>257
自己紹介乙ww
2020/10/17(土) 12:55:56.00ID:6mBaBAeI
C++のメンターは半年で精神を害してやめるか廃人になる
2020/10/17(土) 13:03:03.95ID:rUSQx6JP
そりゃお前さんの会社がブラックなだけだろ
2020/10/17(土) 14:30:06.82ID:bl1AtnqD
まあ江添みたいな輩といっしょに働いてたらメンタル壊れるだろうな。
まともに話ききやしねーし。
262デフォルトの名無しさん
垢版 |
2020/10/17(土) 14:47:43.15ID:/Ip3Dsod
奇貨居くべし
2020/10/17(土) 15:07:46.75ID:fHznvt//
>>261
>>259 をよく読め
>>259 は「メンター」と付き合うとメンタルが壊れる、と言っているのではなく
「メンター」自身がメンタルが壊れて、結果、メンターという存在が皆無になる、と言っているのだよ、事態はより深刻なんだ
2020/10/17(土) 16:52:45.52ID:U3N3/O+C
>>258
既成のソフト以外の何だと思ったの?

マウント取り損なったのが誰かは、誰の目にも明らかなので
安っぽいネットスラングで返しても無駄だよw
2020/10/17(土) 17:20:58.06ID:l+Syhppg
もはやC++でゲーム開発は向いていないのでは
今時型安全なんて時代遅れだよ
266デフォルトの名無しさん
垢版 |
2020/10/17(土) 18:39:57.56ID:P3PLPttw
>>264
ID:U3N3/O+C
> おまえらと違ってこちとらおまえらごとき論破するのに侮辱語はいらねえ

https://emotion-ai.userlocal.jp/documents/65ce7e112b0f132f4f46ce2e611994dc/result?nr=1
> 怒りの感情が強い文章です

論破されて怒っちゃったかな?初心者くん
2020/10/17(土) 19:10:46.71ID:RsKDaYmq
>>265
1つくらい正しいこと言えよ。
今でも重量級ゲームはC++が主流。rustに流れる可能性はあるけど
あとC++は型安全ではない
2020/10/17(土) 19:18:55.82ID:U3N3/O+C
>>266
アフィサイトのNGワード程度の「解析」に依存しちゃってる自分恥ずかしくないの?
2020/10/17(土) 19:39:08.06ID:U3N3/O+C
2回も繰り返しちまって可哀想にw
2020/10/17(土) 20:06:45.56ID:P3PLPttw
縁起悪いから黙ってろ バカが伝染る
2020/10/17(土) 20:20:21.84ID:U3N3/O+C
あっ、斉藤!!
2020/10/17(土) 20:24:53.10ID:/XplsXfZ
ごめんだけど、他でやってくれないかな。
2020/10/17(土) 22:54:56.13ID:vimxgZ9f
相談です。C++を完全に理解するにはどうすればいいですか?
http://pbs.twimg.com/media/EUH_eMWUwAAgsV4.jpg
2020/10/17(土) 23:06:18.54ID:7I8BM+av
神に近い存在になること
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況