!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part164
https://mevius.5ch.net/test/read.cgi/tech/1683600652/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part165
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ efda-9b8G)
2023/10/31(火) 07:37:38.52ID:+ZyYyqMO0483デフォルトの名無しさん (ワッチョイ 5e79-w5sm)
2024/09/27(金) 12:33:43.81ID:6/1p1gGO0 スマートポインターを使うように強制できる機能とかなら必要ないなあ
484デフォルトの名無しさん (アウアウエー Saaa-rNKn)
2024/09/27(金) 16:51:52.33ID:pgg/4VuRa >>473 のような未来は永遠に来ない
485デフォルトの名無しさん (アウアウエー Saaa-rNKn)
2024/09/27(金) 16:54:13.57ID:pgg/4VuRa486デフォルトの名無しさん (アウアウエー Saaa-rNKn)
2024/09/27(金) 16:54:31.95ID:pgg/4VuRa >>481
同意
同意
487デフォルトの名無しさん (アウアウエー Saaa-rNKn)
2024/09/27(金) 16:54:58.40ID:pgg/4VuRa488デフォルトの名無しさん (ワッチョイ e39c-jZWQ)
2024/09/27(金) 17:14:28.28ID:n6BA5joS0489デフォルトの名無しさん (ワッチョイ 728c-rNKn)
2024/09/27(金) 18:24:18.27ID:dg7IL8lg0 極限のパフォーマンスは別に要らないから安全にしたいという要件なら GC が既に解決しているし
今更生ポインタを禁止したところで C# や Java と同じ方向性のナニカにしかならんじゃろ
今更生ポインタを禁止したところで C# や Java と同じ方向性のナニカにしかならんじゃろ
490デフォルトの名無しさん (ワッチョイ 1e02-VArp)
2024/09/27(金) 18:46:28.46ID:EoeiRCVP0 gcがあったらメモリリークしないなんて幻想未だに信じてるとはね
491デフォルトの名無しさん (ワッチョイ a778-KU+G)
2024/09/27(金) 18:59:34.32ID:RwmUzOsi0 リークの話なの?
492デフォルトの名無しさん (ワッチョイ e39c-jZWQ)
2024/09/27(金) 19:07:06.62ID:n6BA5joS0 >>489
ライブラリとかフレームワークを使う側のコーダーと作る側のライブラリアンは性能要件が全然別。
コーダーに対してライブラリアンが「コーダーのコードに極限のパフォーマンスは別に要らないから安全に「させたい」」というのはあるだろ。
ライブラリとかフレームワークを使う側のコーダーと作る側のライブラリアンは性能要件が全然別。
コーダーに対してライブラリアンが「コーダーのコードに極限のパフォーマンスは別に要らないから安全に「させたい」」というのはあるだろ。
493デフォルトの名無しさん (ワッチョイ cb9e-LUcV)
2024/09/27(金) 23:12:04.55ID:cfj6fT7K0 >>492
それならライブラリ側でメモリ周りを隠蔽するような作り方も出来ると思うけど
ユーザー(コーダー)にはインスタンス使わせるけど内部では参照カウントなりスマポなり使ってるみたいな
それですら問題が起きるようならユーザーがクソ
それならライブラリ側でメモリ周りを隠蔽するような作り方も出来ると思うけど
ユーザー(コーダー)にはインスタンス使わせるけど内部では参照カウントなりスマポなり使ってるみたいな
それですら問題が起きるようならユーザーがクソ
494デフォルトの名無しさん (ワッチョイ e37c-C1Jv)
2024/09/28(土) 10:42:06.28ID:swed/tX60 C++はどんな安全策敷いてもユーザー側がその気になればいくらでもぶち壊せるからね
ライブラリがあんまりそこ頑張っても仕方ない
ライブラリがあんまりそこ頑張っても仕方ない
495デフォルトの名無しさん (アウアウエー Saaa-rNKn)
2024/09/28(土) 12:39:39.83ID:gf2/NL3ha Rustなら壊れないみたいな言い草だな
496デフォルトの名無しさん (ワッチョイ 77ba-vp5J)
2024/09/28(土) 13:06:22.71ID:ZP4SxDa50 C++で書かれたChrome V8エンジンをRustから扱えるRusty V8というライブラリがリリースされたというニュースを見た
メモリ安全性を確保して呼び出しオーバーヘッドもゼロなんだって
ほんとかな?
ただのラッパーじゃないの?
C++側でメモリアクセス違反があれば落ちそうだけど
メモリ安全性を確保して呼び出しオーバーヘッドもゼロなんだって
ほんとかな?
ただのラッパーじゃないの?
C++側でメモリアクセス違反があれば落ちそうだけど
497デフォルトの名無しさん (ブーイモ MMde-7TYI)
2024/09/28(土) 14:26:57.72ID:yW35cSECM その手の話はMICROSOFTの新機能ぐらいい思っておけば
腹も立たない
腹も立たない
498はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b332-XD+R)
2024/09/30(月) 22:26:30.09ID:JxqgGnHQ0 >>496
Rust の標準ライブラリだって内部は unsafe だらけだぞ。
unsafe は Rust のメモリ安全性検査の例外とする指定で、検査はされないが安全であることはプログラマが保証しないといけない。
ただ、 unsafe な部分を慎重に押し込めて (押し込めるのが正しく出来ていれば) あとは Rust のメモリ安全性検査に頼ることが出来る。
ずっと気を付けなきゃならない C++ よりは面倒ごとを基盤に押し込めたら後は機械が検査してくれるほうがマシという程度の話。
押し込めた中に問題があればそりゃ当然駄目だよ。
Rust の標準ライブラリだって内部は unsafe だらけだぞ。
unsafe は Rust のメモリ安全性検査の例外とする指定で、検査はされないが安全であることはプログラマが保証しないといけない。
ただ、 unsafe な部分を慎重に押し込めて (押し込めるのが正しく出来ていれば) あとは Rust のメモリ安全性検査に頼ることが出来る。
ずっと気を付けなきゃならない C++ よりは面倒ごとを基盤に押し込めたら後は機械が検査してくれるほうがマシという程度の話。
押し込めた中に問題があればそりゃ当然駄目だよ。
499デフォルトの名無しさん (ワッチョイ 6f79-uMZa)
2024/10/01(火) 02:05:59.60ID:J7GPtKrz0 V8エンジンてCVE脆弱性で毎月アップデートの口実にされる迷惑なやつだからさっさとRustで書き直せよ
500デフォルトの名無しさん (オイコラミネオ MMa7-Pc8v)
2024/10/01(火) 15:19:57.32ID:KXGxeTHwM >>498
>押し込めた中に問題があればそりゃ当然駄目だよ。
当然分かっているだろうが、unsafeの中だけでなく、
それが外側に及ぼす影響にも問題が生じないように作らなければなら
ないが、それにはunsafeとRustの両方に対する深い理解が
必要となるだろうな。
>押し込めた中に問題があればそりゃ当然駄目だよ。
当然分かっているだろうが、unsafeの中だけでなく、
それが外側に及ぼす影響にも問題が生じないように作らなければなら
ないが、それにはunsafeとRustの両方に対する深い理解が
必要となるだろうな。
501デフォルトの名無しさん (オイコラミネオ MMa7-Pc8v)
2024/10/01(火) 18:36:21.46ID:al1nAqGBM >>500
unsafeの中を通過する時には問題ないが、
戻り値などや、連携する他のメソッドなどが
関係した結果、どこかで分かりにくいメモリーエラー
になるようなことも避ける必要が有るが、
それにはかなりRustの内部構造(?)に対する深い知識
と理解が必要となりそうだ。
unsafeの中を通過する時には問題ないが、
戻り値などや、連携する他のメソッドなどが
関係した結果、どこかで分かりにくいメモリーエラー
になるようなことも避ける必要が有るが、
それにはかなりRustの内部構造(?)に対する深い知識
と理解が必要となりそうだ。
502デフォルトの名無しさん (ワッチョイ 1fb1-/QnX)
2024/10/17(木) 11:01:19.65ID:P7X9/HPx0 >>422
これ、static_assertだけ修正してもしょうがない気がするんだけどなぁ
他にも実体化しないはずの分岐でチェックされてエラーにされることあるし
まぁ条件式に無理矢理テンプレート入れて回避は出来るけど
これ、static_assertだけ修正してもしょうがない気がするんだけどなぁ
他にも実体化しないはずの分岐でチェックされてエラーにされることあるし
まぁ条件式に無理矢理テンプレート入れて回避は出来るけど
503デフォルトの名無しさん (ワッチョイ 2b63-4umj)
2024/10/19(土) 17:30:35.94ID:vb3IsOJN0504デフォルトの名無しさん (ワッチョイ 2b63-4umj)
2024/10/19(土) 17:31:10.99ID:vb3IsOJN0 >>490な発言になったんじゃないの
知らんけど
知らんけど
505デフォルトの名無しさん (ワッチョイ 8593-t4Y2)
2024/10/21(月) 07:19:50.64ID:ThoL8xQh0506デフォルトの名無しさん (ワッチョイ 1907-zDHq)
2024/10/21(月) 14:54:46.51ID:WHCxApN50 C++派だが、Rustをもってしても、相互参照みたいなものは、人類には早いらしい
(設計段階で)無理しないこったな。。
(設計段階で)無理しないこったな。。
507デフォルトの名無しさん (ワッチョイ c60f-zhf3)
2024/10/21(月) 15:57:11.21ID:Hhc6wfX80 そもそも静的解析で解決できる問題か?
508はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 0d32-zDHq)
2024/10/21(月) 16:03:29.88ID:6JU3cZPt0 循環参照をしたいときに出来ないのも困るしな。
なるべくやらないに越したことはないが、やるなら後始末は人が考えないと仕方ないわ。
なるべくやらないに越したことはないが、やるなら後始末は人が考えないと仕方ないわ。
509デフォルトの名無しさん (ワッチョイ e963-f5bJ)
2024/10/21(月) 22:48:14.20ID:XvJERuqr0 食事する哲学者の問題……
Rustだと循環参照するコードを書きにくくなっているから
循環参照によるリークとか病的な反例のうちなんじゃないの
知らんけど
ノードNode同士が論理的には循環参照し得るんだけど
その所有権をスーパーバイザ的な配列superArray: Node[]が持っていて、
Rustだと循環参照するコードを書きにくくなっているから
循環参照によるリークとか病的な反例のうちなんじゃないの
知らんけど
ノードNode同士が論理的には循環参照し得るんだけど
その所有権をスーパーバイザ的な配列superArray: Node[]が持っていて、
510デフォルトの名無しさん (ワッチョイ e963-f5bJ)
2024/10/21(月) 22:53:33.76ID:XvJERuqr0 Node間の参照はsuperArrayのindexで済ませるというのもRustではすんなり通してくれな
いんだっけどうだっけ……
Node& node1 = superArray[0];
Node& node2 = superArray[1];
node1.next = 1;
superArray[node1.next].value = 123; // node2.valueに書く
node1.nextがsuperArray[]の添え字範囲内であることを機械的に保証するためにRustはどんな魔法を使ってくれる
のか
いんだっけどうだっけ……
Node& node1 = superArray[0];
Node& node2 = superArray[1];
node1.next = 1;
superArray[node1.next].value = 123; // node2.valueに書く
node1.nextがsuperArray[]の添え字範囲内であることを機械的に保証するためにRustはどんな魔法を使ってくれる
のか
511はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 0d32-zDHq)
2024/10/22(火) 11:28:00.82ID:UXnTPhGj0 >>510
Rust では実行時にチェックされて範囲から外れていたら panic (C/C++ で言うところの abort みたいなもの) する。
https://doc.rust-lang.org/std/ops/trait.Index.html#tymethod.index
C/C++ のように配列がポインタになるということはなく、スライス (C++ で言うところの span みたいなもの) が基本型として組み込まれているので範囲チェック出来る。
コンパイル時に範囲内であることがわかる状況なら最適化で消えることもあるみたいだけど
実行時に外部から入ってくる値に依存することもあるので実行時にチェックしないとどうしようもない。
Rust では実行時にチェックされて範囲から外れていたら panic (C/C++ で言うところの abort みたいなもの) する。
https://doc.rust-lang.org/std/ops/trait.Index.html#tymethod.index
C/C++ のように配列がポインタになるということはなく、スライス (C++ で言うところの span みたいなもの) が基本型として組み込まれているので範囲チェック出来る。
コンパイル時に範囲内であることがわかる状況なら最適化で消えることもあるみたいだけど
実行時に外部から入ってくる値に依存することもあるので実行時にチェックしないとどうしようもない。
512デフォルトの名無しさん (ワッチョイ 8901-1CwD)
2024/10/28(月) 13:44:32.71ID:A9ortPvu0 enum、
文字列への変換、
大変すぎて、ビックリした
文字列への変換、
大変すぎて、ビックリした
513デフォルトの名無しさん (ワッチョイ 1901-2Yr6)
2024/10/28(月) 14:06:10.17ID:/lht/Ba/0 俺はenumの機能を拡張するクラスを自分で定義してるな
それで文字列変換も文字列からの変換も出来る
それで文字列変換も文字列からの変換も出来る
514デフォルトの名無しさん (ワッチョイ 4907-+Yhf)
2024/10/28(月) 15:41:01.09ID:xcgYWtNU0 autogenerated.txt.c みたいなの使うのも手だぞ 急がば回れ
そしてCよりはうまく書ける
そしてCよりはうまく書ける
515デフォルトの名無しさん (ワッチョイ 8901-1CwD)
2024/10/29(火) 08:22:28.04ID:XRXAB2XQ0516デフォルトの名無しさん (ワッチョイ 4907-+Yhf)
2024/10/29(火) 13:58:12.41ID:WYOK+g300 好きなように書いて、好きなように変換して、途中でincludeする
簡単に書くもよし、ガッチガチにチェックするもよし
簡単に書くもよし、ガッチガチにチェックするもよし
517デフォルトの名無しさん (ワッチョイ fb79-fQm0)
2024/10/30(水) 23:11:10.17ID:x0G86HEF0 HAGE(CAUWA1)
HAGE(CAUWA2)
HAGE(CAUWA3)
:
みたいなテキスト作っといて
手コキストを#includeする手前でHAGEの意味を変えてやるとうまいこと一元化できる
HAGE(CAUWA2)
HAGE(CAUWA3)
:
みたいなテキスト作っといて
手コキストを#includeする手前でHAGEの意味を変えてやるとうまいこと一元化できる
519デフォルトの名無しさん (ワッチョイ 7b4d-XqAs)
2024/10/31(木) 01:08:33.55ID:gisW4Gdb0 magic_enum教えてやれや
じじいは感度低いから知らんか
じじいは感度低いから知らんか
520デフォルトの名無しさん (ワッチョイ 4907-+Yhf)
2024/10/31(木) 05:43:35.79ID:J4xtBqBy0 みてきた それが人気の実装か
やりたいこと次第だが、オーバスペック感はある
ちょうどほしかったんなら止めないけどね
やりたいこと次第だが、オーバスペック感はある
ちょうどほしかったんなら止めないけどね
521デフォルトの名無しさん (ワッチョイ 1901-2Yr6)
2024/10/31(木) 10:56:16.92ID:++2hP8JV0 横からなるほどー!
__PRETTY_FUNCTION__ / __FUNCSIG__
__PRETTY_FUNCTION__ / __FUNCSIG__
522デフォルトの名無しさん (ワッチョイ 8901-1CwD)
2024/10/31(木) 15:32:14.58ID:IcW65SaY0 あのー、アメリカグーグルで、検索すれば、良いのがでてきた
日本は、でてこない
これは、やっぱり、レベルなんだろうね
日本は、でてこない
これは、やっぱり、レベルなんだろうね
523デフォルトの名無しさん (アウアウエー Sae3-07nO)
2024/11/01(金) 19:53:27.66ID:TgBKHsuNa >>518
あさひ奈央
あさひ奈央
524デフォルトの名無しさん (ワッチョイ 1395-VVnD)
2024/11/02(土) 09:17:27.71ID:KpOoS8wa0 >>522
アメリカグーグルって言い方からして頭悪そう
アメリカグーグルって言い方からして頭悪そう
525デフォルトの名無しさん (ワッチョイ 5910-fVPo)
2024/11/05(火) 08:04:39.53ID://VVBUiD0 magic_enumは個数制限がきついんだよな・・256くらいが限度じゃなかったっけ
526青木康善 (アウアウウー Sacd-P7MY)
2024/11/06(水) 17:05:23.05ID:vfgxFq1Ya c plus plusとjava、電子音楽作成にどっちが向いてるかな?早いのは無論c plus plusだろうけど。
527デフォルトの名無しさん (ワッチョイ 6107-Q1tn)
2024/11/06(水) 17:09:08.31ID:jrSvpMvx0 作成というが、記述したいのか、波形合成したいのか、はたまた生成(AI等)したいのか。。
528デフォルトの名無しさん (ワッチョイ f618-UxC2)
2024/11/06(水) 17:14:36.09ID:P7rcAaD30 なんでjava?
529デフォルトの名無しさん (ワッチョイ a901-jwtj)
2024/11/06(水) 20:06:37.45ID:TrFjb6KE0530青木康善 (アウアウウー Sacd-P7MY)
2024/11/06(水) 20:56:51.96ID:XG1hV+N8a C soundというのはかつてありましたが。javaでやろうかな。C++は自分にはハードル高すぎます。
531はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f532-Q1tn)
2024/11/06(水) 21:37:08.81ID:O6Mhx+Gj0 相談スレなんだから相談しなさいよ。
独り言を書きたいなら X で。
独り言を書きたいなら X で。
532デフォルトの名無しさん (オッペケ Sr79-Q1tn)
2024/11/06(水) 22:48:47.88ID:tlKINjNQr 5ちゃん初めてなんでしょ。浮いてるのはほっとこう、じきに慣れてくれる
コンパイラがCらしいね。でもjavaからも操作できる実績があるって
こういうときは、「やってみて脳汁が出そうなほう」でいいとおもう
結局モチベなんで
コンパイラがCらしいね。でもjavaからも操作できる実績があるって
こういうときは、「やってみて脳汁が出そうなほう」でいいとおもう
結局モチベなんで
533はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f532-JeGG)
2024/11/07(木) 03:05:44.48ID:LEgJ6Wm00 Csound は公式に Python や Java 用のラッパーは用意してるみたいだから得意なのでやればよさそう。
ところで固有名詞は正確に表記してくれないと探しにくいやで。
ところで固有名詞は正確に表記してくれないと探しにくいやで。
534デフォルトの名無しさん (ワッチョイ 7e9a-NsVU)
2024/11/08(金) 17:26:41.87ID:k0cYSKPq0 g++とclang++が混ざった環境なのですが、g++でコンパイルしたバイナリはstd::stringとか
名前に__cx11というプレフィックスが付き、一方clang++の方は__1というものが付くようです
とりあえず、clang++の方で__cx11が付くようなバイナリを生成するにはどうしたら
いいでしょうか?
名前に__cx11というプレフィックスが付き、一方clang++の方は__1というものが付くようです
とりあえず、clang++の方で__cx11が付くようなバイナリを生成するにはどうしたら
いいでしょうか?
535デフォルトの名無しさん (ワッチョイ 7e9a-NsVU)
2024/11/08(金) 17:28:48.87ID:k0cYSKPq0 すみません、__cx11じゃなくて__cxx11でした
536はちみつ餃子 ◆8X2XSCHEME (ワッチョイ f532-JeGG)
2024/11/08(金) 17:41:34.61ID:Me1tPYCI0 名前だけ合わせても具体的な実装方法が違えばどうせクラッシュするから意図的にマングルルールを違えている。
https://gcc.gnu.org/onlinedocs/gcc/Interoperation.html#Interoperation
https://gcc.gnu.org/onlinedocs/gcc/Interoperation.html#Interoperation
537デフォルトの名無しさん (ワッチョイ 7e9a-NsVU)
2024/11/08(金) 17:52:36.03ID:k0cYSKPq0 >>536
なるほど、要は「C++コンパイラ、混ぜるな危険」ということでしょうか?
なるほど、要は「C++コンパイラ、混ぜるな危険」ということでしょうか?
538デフォルトの名無しさん (ワッチョイ a901-7tmY)
2024/11/08(金) 18:12:15.75ID:6Qfff3nN0 例外とか互換性があるんかいな?
539デフォルトの名無しさん (ワッチョイ a901-7tmY)
2024/11/08(金) 18:14:37.25ID:6Qfff3nN0 C++コンパイラでコンパイルするにしても
ソースコードをCの範囲に留めて
関数プロトタイプを
extern "C"
すれば大丈夫だよ
ソースコードをCの範囲に留めて
関数プロトタイプを
extern "C"
すれば大丈夫だよ
540デフォルトの名無しさん (ワッチョイ 7e9a-NsVU)
2024/11/08(金) 18:18:53.42ID:k0cYSKPq0 >>539
なるほど、例えばこんな感じなら大丈夫なんですかね?
g++でコンパイルされたバイナリのグループAとclang++でコンパイルされたバイナリの
グループBがあったとき、AからB(またはその逆)を呼ぶときは必ずCリンケージの関数
経由にする、とか....
なるほど、例えばこんな感じなら大丈夫なんですかね?
g++でコンパイルされたバイナリのグループAとclang++でコンパイルされたバイナリの
グループBがあったとき、AからB(またはその逆)を呼ぶときは必ずCリンケージの関数
経由にする、とか....
541はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 71e8-JeGG)
2024/11/08(金) 18:25:46.25ID:Evz7xgHe0542デフォルトの名無しさん (ワッチョイ 7e9a-NsVU)
2024/11/08(金) 18:35:59.90ID:k0cYSKPq0543デフォルトの名無しさん (ワッチョイ b163-+nMC)
2024/11/09(土) 19:08:22.86ID:djyKk80a0 昔std::vector<T>とかstd::stringを前のコンパイラでビルドしたDLLに渡したら以下略
やっぱコンパイラを混ぜるときはextern "C" な関数にプリミティブな型のみを渡すインターフェース設計にするパティーンが安牌
文字列とか渡したかったらあくまでchar[]にすべき……
やっぱコンパイラを混ぜるときはextern "C" な関数にプリミティブな型のみを渡すインターフェース設計にするパティーンが安牌
文字列とか渡したかったらあくまでchar[]にすべき……
544デフォルトの名無しさん (ブーイモ MM43-QLv+)
2024/11/10(日) 16:10:22.46ID:ck6aMoNGM >>536
この場合は別々に標準ライブラリがリンクされる、つまり2つ動くのかな?
この場合は別々に標準ライブラリがリンクされる、つまり2つ動くのかな?
545デフォルトの名無しさん (ワッチョイ 1b79-b0Xs)
2024/11/10(日) 17:48:03.99ID:cLh8//6O0 単にリンクするだけではどっちかのライブラリのスタートアップしか呼ばれないから
呼ばれてない方のライブラリの初期化がされなくてまともに動作しない問題が残ると思う
呼ばれてない方のライブラリの初期化がされなくてまともに動作しない問題が残ると思う
546はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 95cf-bar5)
2024/11/10(日) 18:18:05.60ID:R/A45v0+0 仮にどうにか辻褄合わせが出来てちゃんと動いたとしても将来の開発環境・実行環境でどうなるか予想しづらいというのもある。
547デフォルトの名無しさん (ワッチョイ 9bad-6tcr)
2024/11/10(日) 18:55:50.75ID:g8WH2rn90 こういう感じの実装を見かけたんだけど、ptrって解放済みの領域を指してないよね?
int *ptr = NULL;
std::map<char, int> m;
m.insert(std::make_pair('a', 30));
{
std::map<char, int>::iterator itr = m.find('a');
if (itr != m.end()) ptr = &(itr->second);
// ここでitrは解放される
}
if (ptr) printf("*ptr = %d\n", *ptr); // 大丈夫?
int *ptr = NULL;
std::map<char, int> m;
m.insert(std::make_pair('a', 30));
{
std::map<char, int>::iterator itr = m.find('a');
if (itr != m.end()) ptr = &(itr->second);
// ここでitrは解放される
}
if (ptr) printf("*ptr = %d\n", *ptr); // 大丈夫?
548はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cd32-bar5)
2024/11/10(日) 19:59:53.20ID:a6nPaG4v0549デフォルトの名無しさん (ワッチョイ 9bad-6tcr)
2024/11/10(日) 20:31:11.60ID:g8WH2rn90 >>548
あざっす!なるほど、よかった〜
あざっす!なるほど、よかった〜
550デフォルトの名無しさん (ワッチョイ 1563-EHNx)
2024/11/11(月) 00:36:44.76ID:6qsu0cnY0551デフォルトの名無しさん (ワッチョイ 1563-EHNx)
2024/11/11(月) 00:38:49.39ID:6qsu0cnY0 ただしウィンドーズのDLLの呼び出し場合は>>539に従っていれば問題無いはず……
ランタイムの初期化エントリはDLL毎に_DllMainCRTStartup が用意されてDLL初期化時に呼ばれる
ランタイムの初期化エントリはDLL毎に_DllMainCRTStartup が用意されてDLL初期化時に呼ばれる
552デフォルトの名無しさん (ワッチョイ 759b-NX7e)
2024/11/11(月) 16:46:00.51ID:XlNa4SSE0553青木康善 (アウアウウー Saa9-gsEs)
2024/11/12(火) 22:22:32.82ID:svwbS+Oga 独習C++を図書館で借りました。よく、こんな、難しく、エグい言語が出来ますねみなさん。
554デフォルトの名無しさん (ワッチョイ 1d1f-hYHe)
2024/11/12(火) 22:26:44.98ID:r67kfyB40 他に選択肢がなかったんや😭
あと最近はobjective-cとかいう悪魔合体に比べたらなんでもマシな言語に思えてきてる
あと最近はobjective-cとかいう悪魔合体に比べたらなんでもマシな言語に思えてきてる
555デフォルトの名無しさん (ワッチョイ 0b9a-V0hi)
2024/11/13(水) 01:53:29.63ID:CoujH3FQ0 Objective-C++もよろしく
556はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cd32-4Bi2)
2024/11/13(水) 02:14:12.02ID:Gj2zjD3b0557デフォルトの名無しさん (ワッチョイ 75c3-oheB)
2024/11/13(水) 03:47:19.43ID:rKuXlBFV0 そーだそーだ
C++は難しいからObject Pascalやろうぜ!
C++は難しいからObject Pascalやろうぜ!
558デフォルトの名無しさん (ワッチョイ 25db-QT1F)
2024/11/14(木) 07:49:57.71ID:z8CYzrjO0 C++女学院の人々ってまだ読める所ある?
大好きだったんだけど。
大好きだったんだけど。
559デフォルトの名無しさん (ワッチョイ a501-3n/g)
2024/11/14(木) 12:23:07.88ID:DkukOutW0 >>554
C++と悪魔合体してObjective-C++とかなってるけど自分は実用的に感じた
全部それで書こうとは思わんけど、C++との共存のレベルが高くて鼻血出そうになったわ
OSやその他Apple系APIとのやり取りはObjC++、それ以外のソースはC++のみ、とかも簡単だし
C++と悪魔合体してObjective-C++とかなってるけど自分は実用的に感じた
全部それで書こうとは思わんけど、C++との共存のレベルが高くて鼻血出そうになったわ
OSやその他Apple系APIとのやり取りはObjC++、それ以外のソースはC++のみ、とかも簡単だし
560デフォルトの名無しさん (アウアウエー Sa13-vkNS)
2024/11/14(木) 14:52:24.21ID:a5xmyjQfa561デフォルトの名無しさん (JP 0H1e-hB9O)
2024/11/19(火) 11:41:41.34ID:1x1cv+pZH 演算子のオーバーロードない言語はダメだ
562デフォルトの名無しさん (ブーイモ MM02-7yGp)
2024/11/19(火) 11:53:31.53ID:5+FMYvHmM 演算子オーバーロードがもたらす言語仕様の複雑性を理解してたら軽々しくそういうことは言えない
563デフォルトの名無しさん (ワッチョイ 5f01-P+OA)
2024/11/19(火) 12:47:14.19ID:3l+Mgxo20 演算子なんてなしでも書けるわけで単なる見た目だよ
些末な話
些末な話
564デフォルトの名無しさん (ブーイモ MM02-7yGp)
2024/11/19(火) 13:12:37.41ID:5+FMYvHmM 見た目はとても重要だが
見ただけでは何が実行されるかわからない
見ただけでは何が実行されるかわからない
565デフォルトの名無しさん (ワッチョイ 67ab-Nkdq)
2024/11/19(火) 15:35:04.94ID:k4Dguh0Y0 JavaのBigDecimalなんか見てると演算子オーバーロードのあるC++羨ましいよ
c = a.multiply(b); とか長くなり過ぎて何をやってる式なのか分からなくなる
c = a.multiply(b); とか長くなり過ぎて何をやってる式なのか分からなくなる
566デフォルトの名無しさん (ワッチョイ 67ab-Nkdq)
2024/11/19(火) 15:37:29.08ID:k4Dguh0Y0 いや固定小数型を言語仕様に盛り込まずにライブラリとして実装したJavaが悪いのか・・・
固定小数の取り扱い以外で演算子オーバーロードが欲しいと思ったことはない
固定小数の取り扱い以外で演算子オーバーロードが欲しいと思ったことはない
567デフォルトの名無しさん (JP 0H1e-hB9O)
2024/11/19(火) 15:45:09.52ID:1x1cv+pZH 複素数計算やったことないからそんなこと言える
568デフォルトの名無しさん (ブーイモ MM02-iirp)
2024/11/19(火) 17:03:01.93ID:cTSQFdSPM JAVAはコボラーが転んで使う言語だし
569デフォルトの名無しさん (JP 0H1e-hB9O)
2024/11/19(火) 17:38:58.74ID:1x1cv+pZH 自動微分のボトムアップ微分はC++の演算子オーバーロード機能のおかげで簡単に実現できる
570デフォルトの名無しさん (ワッチョイ 4218-KrXD)
2024/11/19(火) 18:42:30.52ID:ZMREqX8y0 javaって演算子オーバーロードないのか・・・
571デフォルトの名無しさん (アウアウエー Sa3a-iI0F)
2024/11/20(水) 17:06:14.09ID:vf/fflloa >>567
†とか造った?
†とか造った?
572デフォルトの名無しさん (ワッチョイ fb7c-rtho)
2024/11/20(水) 21:14:42.80ID:GASOinjS0 Javaが持て囃されてた頃は「演算子オーバーロード?+で引き算もできるってこと?なんて危険な機能なんだ!」って叩かれてて
そんな危険なものはJavaにはありません!って売り文句にされてたんだよ
アホみたいだけど本当の話
そんな危険なものはJavaにはありません!って売り文句にされてたんだよ
アホみたいだけど本当の話
573デフォルトの名無しさん (ワッチョイ 4e8d-7yGp)
2024/11/20(水) 21:21:46.59ID:JO5RbARc0 アホといい切れる根拠は言える?
574デフォルトの名無しさん (ワッチョイ 4243-gDrC)
2024/11/20(水) 22:54:39.86ID:g9sD9hG/0 アホみたいなカスの嘘です
575デフォルトの名無しさん (ワッチョイ 0e79-Yo0P)
2024/11/20(水) 23:28:22.48ID:KXgtJp1v0 演算子オーバーロードは定義のリスクや手間の割には結局自己満に完結する事が多くて、
しかも結局C++という小さな世界でしか通用しないから、他に楽しい事が沢山ある今の人は時間の無駄と考えるんじゃないかな
しかも結局C++という小さな世界でしか通用しないから、他に楽しい事が沢山ある今の人は時間の無駄と考えるんじゃないかな
576デフォルトの名無しさん (ワッチョイ ff07-pOJn)
2024/11/20(水) 23:48:15.85ID:F7TNJyq/0 無理に使うもんではないな たまにすごく便利
577デフォルトの名無しさん (ワッチョイ 7b71-nj0J)
2024/11/21(木) 00:20:44.87ID:PQXYbgG+0 std::chronoの時間型なんかは良い例だよね
・clock - clock = duration (例. 13時 - 12時 = 1時間)
・clock + duration = clock (12時+1時間=13時)
・duration + duration = duration (1時間 + 1時間 = 2時間)
・clock + clock: 不可
こういう型表現もできるのは良い点
・clock - clock = duration (例. 13時 - 12時 = 1時間)
・clock + duration = clock (12時+1時間=13時)
・duration + duration = duration (1時間 + 1時間 = 2時間)
・clock + clock: 不可
こういう型表現もできるのは良い点
578デフォルトの名無しさん (ワッチョイ 4e8d-7yGp)
2024/11/21(木) 01:22:06.15ID:KgLYxoZg0 初見で単に整数で取り出すのに一苦労だけどな
型安全厨くささ感じる
型安全厨くささ感じる
579デフォルトの名無しさん (ワッチョイ 06cf-xZnB)
2024/11/21(木) 08:22:14.09ID:5MMZVDCg0 演算の組み合わせが多いユースケースで可読性を上げるためのものだろう。
少ないなら関数のままでも十分。そういう意味で std::chrono は微妙。
少ないなら関数のままでも十分。そういう意味で std::chrono は微妙。
580デフォルトの名無しさん (JP 0H1e-hB9O)
2024/11/21(木) 10:15:07.08ID:F4Mnbej3H581デフォルトの名無しさん (JP 0H1e-hB9O)
2024/11/21(木) 10:20:45.90ID:F4Mnbej3H >>571
随伴行列(共役転置行列)か? それは演算子オーバーロードじゃなくて普通の関数でいいだろ
随伴行列(共役転置行列)か? それは演算子オーバーロードじゃなくて普通の関数でいいだろ
582デフォルトの名無しさん (ワッチョイ 8ee1-jy16)
2024/11/21(木) 19:11:25.04ID:U8jioV5J0 いわゆる演算子オーバーロードのメリットは、中置記法が使えるということと、一部の人間が使い慣れている演算子の算数・数学的記法のメタファーが使えることくらいかね。
その代償として文章構造の曖昧さや(その対処のための)優先順位といった規則の複雑化が必要になるので、言語設計観点からはメリット小さいよなぁ。
可能ならば中置記法を捨てて全部後置記法に統一したいところ。
その代償として文章構造の曖昧さや(その対処のための)優先順位といった規則の複雑化が必要になるので、言語設計観点からはメリット小さいよなぁ。
可能ならば中置記法を捨てて全部後置記法に統一したいところ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 【映画】『クレヨンしんちゃん』 中国で公開延期 対日報復、エンタメに波及 [冬月記者★]
- Xのネトウヨは大体高齢独身。40過ぎて独身だと例外なく狂うって本当だったんだなと思う [805596214]
- 生活保護だけど30万円のPCの椅子買おうか迷ってる
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 女の子に生まれ変わったらやりたいこと🍓🍫💄❤ [856698234]
- ウッドデッキで調子こいてたやついたじゃん
