1 名前:sage [2025/04/26(土) 10:34:58.41 ID:pbPDl6lv0.net] !extend:checked:vvvvv:1000:512 !extend:checked:vvvvv:1000:512 ↑同じ内容を3行貼り付けること 次スレは>>980 が立てること 無理なら細かく安価指定 ※前スレ C++相談室 part165 https://mevius.5ch.net/test/read.cgi/tech/1698705458/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
152 名前:デフォルトの名無しさん mailto:sage [2025/05/26(月) 19:29:05.28 ID:wMDgKKvh0.net] 単に回答者にケチつけてる第三者かと思ったら質問者本人かよwww まぁ向いてないからプログラミング辞めた方がいいな
153 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 02:11:26.47 ID:oTufth+r0.net] で、 結局まとまな回答は無かったという バカどもの落書きだけという
154 名前:デフォルトの名無しさん mailto:sage [2025/05/27(火) 05:19:16.15 ID:umWtEDVw0.net] >>153 >>146
155 名前:デフォルトの名無しさん [2025/05/29(木) 00:33:28.11 ID:gwInQzjaH.net] zを複素数としてz+1は数学の教科書は普通にある。ところが、C++のプログラムで z1=z+1としようものならテンプレート関係のエラーメッセージがズラっと出てくる。 初心者は戸惑う。いい加減、complex.hに template <class T, class U> decltype(auto) operator + (const std::complex<T>& z, U d) { return std::complex< decltype(std::declval<T>() + std::declval<U>())> (real(z) + d, imag(z)); } みたいなものを追加してくれないか?
156 名前:デフォルトの名無しさん [2025/05/29(木) 00:37:22.81 ID:gwInQzjaH.net] これは、complex<float> z1; とcomplex<double> z2; z1+z2の演算でも同じ。 template <class T, class U> decltype(auto) operator + (const std::complex<T>& z1, const std::complex<U>& z2) { return std::complex< decltype(std::declval<T>()+std::declval<U>() )> ( z1.real()+z2.real(), z1.imag()+z2.imag() ); } みたいなものを実装してほしい。
157 名前:デフォルトの名無しさん [2025/05/29(木) 00:38:57.36 ID:TWUjYqyj0.net] 【悲報】兵庫県斎藤知事のデモに増山誠氏が行くと、共産党員らしき人達に取り囲まれ罵声をあびせられる [662593167] 2025/05/26(月) 10:13:20.40 https://hayabusa9.5ch.net/test/read.cgi/news/1748222000/ 元総務部長が処分に異議「エロ小説公開は知事の指示に基づく外部通報!正当な業務行為だ!!」斎藤「」 [754019341] 2025/05/28(水) 17:40:55.62 https://hayabusa9.5ch.net/test/read.cgi/news/1748421655/ 斎藤兵庫「私は情報漏えいを指示してないが総務部長は知事から指示されてやったので処分は軽くする」 [659060378] 2025/05/28(水) 21:57:18.08 https://hayabusa9.5ch.net/test/read.cgi/news/1748437038/ カンボジアの巨大特殊詐欺拠点で日本人20人以上を拘束wwwwwwwwwwwwwwwwwwwww [271912485] 2025/05/28(水) 22:14:24.13 https://hayabusa9.5ch.net/test/read.cgi/news/1748438064/ 日本で行方不明になる子供が増加 中國人に誘拐され臓器売買されてる(画像あり) [659060378] 2025/05/28(水) 22:18:14.00 https://hayabusa9.5ch.net/test/read.cgi/news/1748438294/ 【兵庫】県庁内に動揺 幹部「県職員という誇りが持てない」 斎藤元彦知事の漏えい指示可能性に 県民からは辞職を求める声も [ぐれ★] 2025/05/28(水) 20:04:46.31 https://asahi.5ch.net/test/read.cgi/newsplus/1748430286/ 【斎藤知事告発問題】情報漏えい認定され懲戒処分 兵庫県元総務部長・井ノ本知明氏が処分の執行停止を申し立てる意向示す ★2 [ぐれ★] 2025/05/28(水) 20:06:37.11 https://asahi.5ch.net/test/read.cgi/newsplus/1748430397/ 【兵庫】「知事・元副知事の指示に基づき正当業務を…」斎藤知事の“側近”井ノ本氏の弁明書 知事は改めて否定 [ぐれ★] 2025/05/28(水) 17:08:14.82 https://asahi.5ch.net/test/read.cgi/newsplus/1748419694/
158 名前:デフォルトの名無しさん [2025/05/29(木) 08:13:06.72 ID:u1Xhema6a.net] z1=z+complex<int>(1,0); complex<float>とcomplex<double>の和は出来なくても良いと思うけど z3=hoge_cast<complex<double>>(z1)+z2;
159 名前:デフォルトの名無しさん [2025/05/29(木) 10:31:08.39 ID:Fzugd6EU0.net] AIチャットボットに有害な情報を出力させる手口が存在、研究者が危険性を指摘 2025-05-27 20:00 https://karapaia.com/archives/512716.html >> イスラエルの研究チームが、主要なAIチャットボットが「脱獄(ジェイルブレイク)」と呼ばれる手口で、安全制御を回避され、違法で有害な情報を出力してしまう可能性があることを示した。 >> ChatGPTのような生成AIには、ユーザーの指示に対して有害な回答をしないよう制限が組み込まれている。しかし、今回の実験では、その制限が比較的簡単にすり抜けられることが明らかになった。 >> 研究チームは、「これまで国家機関や犯罪組織に限られていた情報が、今やノートパソコンやスマートフォンを持つ誰にでも届く可能性がある」と警鐘を鳴らしている。 中略 >> ネットワークのハッキング法や犯罪行為であっても、手順を追って教えてくれるのだ。 中略 >> この報告は『arXiv』(2025年5月15日投稿)で閲覧できる。 ※電波攻撃音波攻撃詳細に方法を教えてくれる
160 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 10:55:19.72 ID:crgrWrcc0.net] >>155 C++で型を理解することは必須だし型を理解していたら特には難しくはない エラーは分かりやすくあるべきだとは思うけども
161 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 15:34:51.30 ID:KimJmnNH0.net] 『変数名はキーワード、アンダースコア( _ )で始まる名前、アンダースコア2つ( __ ) を含む名前以外は自由に名付けることができる。』 って某入門書にあったんですけど、予約語は別にして、アンダースコアは衝突抑止の念のためにという事ですよね。 private: int _size=0; なんて変数名によくしています。
162 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 15:46:46.20 ID:v8EevfYQM.net] >>161 それはやめた方がいい。理由は、 ・_xxx は、ライブラリの中やマクロで使う事が有るとされている。 ・__xxx は、コンパイラが内部でひそかに使って良いとされている。
163 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 15:47:49.43 ID:v8EevfYQM.net] 敢えて、そういう事をしたいなら、 int size_ = 0; のように、xxx_ や xxx__ は、まあ、やっていいのかも知れない。
164 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 15:49:35.81 ID:ozJD0VM40.net] アンダースコアは実装が使うから#define _sizeされても文句言えないしリンクエラーになるかもだし_Boolみたいに将来予約語になるかもしれない …ただ世の中にはアンダースコアの付いてない普通に変数名によく使われるような単語を平気で#defineしてくるクソヘッダーも多いので気にしてもしょうがない あとユーザー定義リテラルだけは例外で逆にアンダースコアで始めないといけない
165 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 15:58:31.71 ID:v8EevfYQM.net] そういえば、マクロの dummy 変数の習慣として、 #define MMMM(_x_,_y_) (_x_と_y_を使った表現) のように、_x_ や _y_ のように、前後に _ を付けた名前を使う というものがある、と聞いたことが有る。
166 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 16:26:19.54 ID:G9KWFEhx0.net] >>161 C++標準で予約されているから使ってはダメ。 https://learn.microsoft.com/ja-jp/cpp/cpp/keywords-cpp
167 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 16:30:44.26 ID:KimJmnNH0.net] どもです。勉強になります。 んじゃこれからは private: int data_=0; の感じで書くことにします。うん メンバ変数は他とは違うんだぞと思わせたくて。 ちなみに private: int data_(0); って書くとエラーになるのね。NSDMIの仕様でしたけ?
168 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 16:48:24.08 ID:ozJD0VM40.net] メンバ変数だけじゃなくメンバ関数も区別したくない?ってなるのでthis->を省略すると警告が出るスイッチこそ欲すい
169 名前:はちみつ餃子 mailto:sage [2025/05/29(木) 16:52:24.76 ID:SDgOXepR0.net] 単にアンダースコアで始まる名前というだけなら「グローバル名前空間で」処理系のために予約されているだけなのでグローバル名前空間以外で使う分には問題ない。 アンダースコアふたつが連続で含まれるか、アンダースコアで始まって大文字が続く名前はあらゆる用途で予約されてるので一般ユーザが定義 (宣言) してはいけない。 https://timsong-cpp.github.io/cppwp/n3337/global.names >>161 > 予約語は別にして 予約語という言葉をコンパイラ一般の用語として使っている資料は多いんだけど C++ の仕様としては予約語という言葉は使ってない。 いや、ちょっと使ってるんだけどはっきりした定義なく脚注で一度出てくるだけなので正式な用語じゃないと思う。 https://timsong-cpp.github.io/cppwp/n3337/lex.digraph#footnote-16 コンパイラが直接的に認識して文法上の特別な地位にあるような名前として「キーワード」があり、 それとは別にライブラリの構成上の規約として「予約名」がある。
170 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 17:07:12.49 ID:KimJmnNH0.net] >>169 > 単にアンダースコアで始まる名前というだけなら「グローバル名前空間で」処理系のために予約されているだけなのでグローバル名前空間以外で使う分には問題ない。 > アンダースコアふたつが連続で含まれるか、アンダースコアで始まって大文字が続く名前はあらゆる用途で予約されてるので一般ユーザが定義 (宣言) してはいけない。 ども了解です。基本外部で宣言する事はしないです。てかもうないですもんね。
171 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 20:50:35.18 ID:lOyNyril0.net] キーワード以外にもmainとかdefinedとか__file__とか__VA_ARGS__とか規格で特殊な意味を与えられてる文字列は色々あるけど その総称ってないんだよな
172 名前:デフォルトの名無しさん mailto:sage [2025/05/29(木) 23:49:20.86 ID:hr2gWeV00.net] C#やPythonのように、クラスのフィールドをアンダースコアで始めるのが一般的という言語もあるから、そちらから来るとそうしてしまうのかも? C++は統一的な指針はないけれど、GoogleのC++スタイルガイドでは value_ のように末尾にアンダースコアを付けるとしてるので、これで良いと思う 昔ながらのプロジェクトだと member の意味で m_value のようにするというのがあるけど、これはだいぶレガシー
173 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 01:16:49.62 ID:Jzn0K6cGa.net] ハンガリアン記法などというワードも、もはや若人には通じない時代となってしまったのだ・・・
174 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 01:39:44.98 ID:QwZ+U2hj0.net] 個人で書くときはハンガリアン(もどき)だしm_付けてるけどな サフィックスよりはプレフィックス付ける方がサジェストとか検索で絞りやすい 古いだのなんだのじゃなくて合理的ならなんでもいいと思うんだけどな
175 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 02:42:40.16 ID:qIE+EPsq0.net] m_も馬鹿っぽいけどな
176 名前:デフォルトの名無しさん [2025/05/30(金) 03:11:51.77 ID:DT1BzE420.net] FORTRAN方式こそ正義
177 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 03:32:04.17 ID:a8PtKm050.net] 前も似たようなこと言ったけど、馬鹿っぽいとか古いとか、ユーザーには何の利益にもならんぞ
178 名前:デフォルトの名無しさん [2025/05/30(金) 10:36:11.75 ID:9fSC83d40.net] 最近のIDEは色がついていてローカル変数とメンバー変数が区別できるようになってるね m_ などのプリフィックスは不要になってきてると思う
179 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 10:50:34.95 ID:XWQpoVmBa.net] m_ とか g_ は恥ずかしいね
180 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 11:00:52.20 ID:ORX18+JcM.net] >>179 そんなことない。
181 名前:デフォルトの名無しさん [2025/05/30(金) 12:05:13.31 ID:qi/53/kN0.net] 一目でメンバ変数かを判断できるようにするべきだ
182 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 12:09:34.75 ID:MmHFotTIM.net] >>172 >C++は統一的な指針はないけれど、GoogleのC++スタイルガイドでは value_ のように末尾にアンダースコアを付けるとしてるので、これで良いと思う でも、local auto 変数、local static 変数、メンバ変数と、(完全な)グローバル変数 global static 変数の少なくとも 5 種類あるので、 m_xxx, g_xxx, s_xxx の記法だと、区別しやすいが、 xxx_ だと難しい。
183 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 12:55:15.24 ID:ST0oYfQR0.net] グローバル変数は爆弾だから特別な名前を付けるべき データメンバーとローカル変数は(クラス内では)混ぜて多用されるから区別付けておくべき それ以外は好みでいいよ
184 名前:デフォルトの名無しさん [2025/05/30(金) 13:22:08.94 ID:XWQpoVmBa.net] >>168 判る
185 名前:デフォルトの名無しさん [2025/05/30(金) 13:22:41.29 ID:FTEPrInt0.net] 悪用されるのは当然です 高品質かつ高速な画像生成AI「FLUX.1 Kontext」が登場したので使ってみた、テキストと画像の入力に対応しアニメ風も実写風も生成可能 https://gigazine.net/news/20250530-flux-1-kontext-image-generation-ai/ 全てのAIの推論をどうやって導き出したかがわかるのでプログラムの改造がはかどる AnthropicがAIモデルの思考内容を可視化できるオープンソースツール「circuit-tracer」を公開 https://gigazine.net/news/20250530-anthropic-open-source-circuit-tracing/
186 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 13:23:32.32 ID:XWQpoVmBa.net] const は c_xxx ですね判ります
187 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 15:34:37.29 ID:uDWPTWtO0.net] m_ とか s_とかg_つける習慣はやめられないな スコープ明示は読みやすい この程度をIDEに依存したくないわ
188 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 15:35:56.97 ID:uDWPTWtO0.net] あと初見でautoだらけとかチェーンしまくるコードも読みにくくてしゃあない 書いた本人は無駄なくせて満足だろうけど、ある程度の冗長性は許容したほうが読みやすいし事故を防げる場合もあるんだよな
189 名前:デフォルトの名無しさん [2025/05/30(金) 15:42:21.31 ID:418TV5iU0.net] >>188 無駄をなくすのが目的じゃなくて 情報の重複を避けてるんじゃないかな?
190 名前:デフォルトの名無しさん mailto:sage [2025/05/30(金) 16:01:45.27 ID:uDWPTWtO0.net] ちなみにautoでしか書けないやつとかあるのはわかってるよ
191 名前:デフォルトの名無しさん mailto:sage [2025/05/31(土) 02:34:30.00 ID:s94c4VR80.net] イテレータの型なんかはauto使わず律儀に書く方が間違ってる
192 名前:はちみつ餃子 mailto:sage [2025/06/02(月) 09:16:11.21 ID:aX5lnsqr0.net] Stroustrup は名前に型やスコープなどの情報を埋め込むのは否定的だ。 https://www.stroustrup.com/bs_faq2.html#Hungarian 部分的に便利な場合があることは認めていて、型名を大文字で始める (アッパーキャメルケース) こととマクロは全て大文字にすることを紹介してる。
193 名前:デフォルトの名無しさん [2025/06/02(月) 14:50:23.57 ID:DSKTrfoza.net] リファクタリングの途中でルールにずれるたびに名前変えてると効率悪過ぎですし
194 名前:はちみつ餃子 mailto:sage [2025/06/02(月) 15:57:32.89 ID:aX5lnsqr0.net] 出自が違うライブラリを組み合わせて使うのもよくあることだし、一貫した規約を保つのは難しいな。 D&E の 9.4.4 ではツールがより賢くなった理想的な開発環境について触れている。 プログラミング言語がテキスト表現を持つのはプログラマに対するインターフェイスに過ぎず、プログラムがテキストである必要はないという論だ。 ツール内部では抽象的なデータ構造として持っておいて必要に応じて (各プログラマの好みに合わせて) テキスト表現を調整するような仕組みにすれば名付けのスタイルなんかどうでもよくなる。
195 名前:デフォルトの名無しさん [2025/06/02(月) 16:43:02.90 ID:wUlZIBZbH.net] あのー、話をぶったぎってすみません。 >>155 の関数の戻り値は decltype(auto) じゃなくて 単純にautoでいいです よね? RVOを使っているから値返しで良いし、参照返しも okなdecltype(auto)は過剰スペックなような。
196 名前:デフォルトの名無しさん [2025/06/02(月) 16:52:31.25 ID:Ca4PuVUf0.net] シャープ、PythonによるAIデバイス向け高位合成ツールをオープンソースで公開 https://news.mynavi.jp/techplus/article/20250602-3343055/ 博報堂メディカル、生成AIを用いた審査業務効率化ソリューションを開発 [ https://news.mynavi.jp/techplus/article/20250602-3342950/ 「AIをより魅力的にする戦略」がAIチャットボットに「薬物使用を促す」といった有害な考えを強化させる可能性があると研究で判明 https://gigazine.net/news/20250602-ai-chatbots-user-influence-attention/
197 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 20:55:46.15 ID:ET4i7BARM.net] >>192 >Stroustrup は名前に型やスコープなどの情報を埋め込むのは否定的だ。 彼の「机上の空論気質」がそこにも現れている。
198 名前:デフォルトの名無しさん mailto:sage [2025/06/02(月) 22:27:52.64 ID:ET4i7BARM.net] 昔、BASIC言語で、数値(単精度浮動小数点)はAの様に、文字列は A$ の様に 書くのは分かりやすかったな。 今も、数値はx,y,a,bやi,j、文字列変数は、strText と書いた方が分かりやすく感じる。
199 名前:デフォルトの名無しさん [2025/06/02(月) 23:11:50.34 ID:wUlZIBZbH.net] >>195 = >>155 です。
200 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 01:42:24.38 ID:ue5SdiDx0.net] 型を変数名に含めるのは型を大量に作るのが当たり前になった今では速攻破綻する。文字列だけでも何種類あるよ スコープはC++では有限だからまあよしというか、マクロという凶悪大スコープなやつだけは隔離しないとやってられない
201 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 03:15:04.87 ID:QDwFpnnH0.net] >>192 最後に「細かいことにこだわるよりも、一貫してルールが守られていることの方が重要」と結んでるのを皆ガン無視してるな
202 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 03:19:00.18 ID:0VgbeSrB0.net] >>201 それは言うまでもなく前提の話だと思うわ 今はその前提の話の先の話をしてるんだろうと俺は大人しく見てる
203 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 05:25:56.96 ID:ZBtI7lM80.net] cの範疇になるけどsignedとunsignedが変数名でわかるのは助かるけどな コンパイラのwarning任せは心もとない
204 名前:デフォルトの名無しさん [2025/06/03(火) 06:02:38.05 ID:h7iZDaPS0.net] 変数は日本語で
205 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 09:23:02.69 ID:y5vobhTd0.net] 最初から言語で縛ってればこの議論すら発生してない
206 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 10:34:45.25 ID:h0O9iP1b0.net] MINDでしたけ?
207 名前:はちみつ餃子 mailto:sage [2025/06/03(火) 11:33:27.00 ID:P/OxecZX0.net] >>203 数値については変数の型そのものよりも演算のときに暗黙に型変換されることがあるのが C++ で問題になりやすいところだと思う。
208 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 14:29:05.51 ID:tpA/FWUpM.net] >>200 >文字列だけでも何種類あるよ だからこそ、統一的に接頭辞で区別すると便利だ。
209 名前:デフォルトの名無しさん [2025/06/03(火) 14:51:27.14 ID:7K3A6UIY0.net] XXXsよりXXXList (またはXXXVector)だ!
210 名前:デフォルトの名無しさん [2025/06/03(火) 16:18:33.92 ID:h7iZDaPS0.net] DNAはどうなってんだろうな 4進数の羅列だけで、変数持ってないし 直接アドレス指定どうやってんだよ? peek pokeは誰が担ってんだよ
211 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 20:04:19.87 ID:/7yVoUF50.net] >>210 タンパク質の合成とか調べなされ。mRNAとかtRNAとか。
212 名前:デフォルトの名無しさん [2025/06/03(火) 20:22:12.60 ID:ETf4Zm6Cd.net] >>155 虚数は実在しない
213 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 21:01:25.55 ID:/jgzz5v70.net] >>212 「虚数」みたいなラベルに騙されている。 「数字2つのタプルで、四則演算の定義されたもの」で、虚数みたいな演算を持つものと考えればいい。
214 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 21:15:47.28 ID:ZBtI7lM80.net] >>212 数学を誤解してるやつの典型だな 存在するとかしねーじゃないっての
215 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 21:28:00.78 ID:h0O9iP1b0.net] 3次方程式の解の方程式に虚数が出てくる意味ですよ。しったか
216 名前:デフォルトの名無しさん [2025/06/03(火) 21:43:38.26 ID:ZVCnTieoa.net] そんなこと言ったら0も-1もねーよ
217 名前:デフォルトの名無しさん mailto:sage [2025/06/03(火) 21:53:33.79 ID:bcTkTLKWa.net] >>213 だから複素数がベクトルとして機能するんだよね
218 名前:デフォルトの名無しさん [2025/06/03(火) 22:37:53.10 ID:SMbzrRmIa.net] >>210 crisper-cas-9
219 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 04:46:09.37 ID:GWnctGWc0.net] 質問なのですが double qax(int a, long b) { ... } double quux(int a, long b) { ... } std::function<double(int, long)> gfred= qax; としたときに、gfred が qax と同じだが quux とは違う、というのを判定するにはど うしたら良いの?
220 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 05:46:56.09 ID:EsSRpHcz0.net] >>217 正確には、+と*の演算による複素数同士の関係(構造)が複素数の本質。 「虚」とか、本質とは関係のない単なるバズワード。
221 名前:はちみつ餃子 mailto:sage [2025/06/04(水) 09:29:46.05 ID:XvRleYyH0.net] >>219 元の型で取り出すためのメンバ関数テンプレートとして target が使える。 ↓こういうことがしたいのかな? https://wandbox.org/permlink/MpTFLrezqJE06Myb
222 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 09:58:31.17 ID:pOYKhOcIa.net] >>219 https://ideone.com/70WOig
223 名前:デフォルトの名無しさん [2025/06/04(水) 20:04:15.01 ID:Ao4InlGx0.net] GoogleのGemini 2.5で日本語を含む多言語の音声生成が可能に https: //gigazine.net/news/20250604-google-gemini-native-audio/ 無料で超絶リアルな3DCGキャラを作成&動かせるゲーム開発ツール「MetaHuman」の一部がUnreal Engine 5.6に統合 https: //gigazine.net/news/20250604-unreal-engine-5-6-metahuman/ ついにAndroid版Photoshopのベータ版が登場、無料でAIによる画像生成やレイヤー編集を利用可能 https: //gigazine.net/news/20250604-adobe-photoshop-android/ あなたは「生成AI製フェイク画像」を見抜けますか?--判別は"ほぼ無理”な時代、来歴証明が重要なワケ https: //japan.cnet.com/article/35233768/ ChatGPT無料版でも「会話履歴を踏まえた回答」が可能に、ただし最近の会話のみ https: //japan.cnet.com/article/35233795/ xAI「Grok」18禁モード無料開放 けしからん会話可能に 日本語OK https: //ascii.jp/ai/
224 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 23:13:17.20 ID:GWnctGWc0.net] >>221 なるほど…… >>222 なるほど…… しかしstd::function<T>::target()で関数オブジェクトも扱えるらしいとわかったのでやってみたら こちらは意図通り動かず釈然とせんぬ…… https://ideone.com/VM9Vh0 24行目〜26行目のif文の動きが思ってたのと違う…… 一体どうすれば……orz
225 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 23:18:49.86 ID:GWnctGWc0.net] 24行目〜26行目のif文の動きが思ってたのと違う……
226 名前:デフォルトの名無しさん mailto:sage [2025/06/04(水) 23:27:49.48 ID:GWnctGWc0.net] とりま↓こうしたら逝けた…… https://ideone.com/sug3S4 んまーfooのインスタンスの寿命を考えたらstd::function<T>はfooをコピーする実装になるという予想の下に、 fooを構築したときのthisをメンバm_objIDに記憶させて、fooの等値演算はm_objIDの比較で行うようにしたらイゴイタ…… 5chは漏れの日記帳……
227 名前:はちみつ餃子 mailto:sage [2025/06/05(木) 03:33:47.67 ID:lIQfbdfd0.net] >>226 この場合に呼び出されるコンストラクタは template<class F> function(F f); なのでコピーされることはこのシグネチャから自明。 https://timsong-cpp.github.io/cppwp/n3337/func.wrap.func.con std::function は (同じ形式で呼び出しが可能なら) 違う型のオブジェクトを統一的に扱うことが目的なので入れる型を限定してしまうような構造は std::function を使う甲斐がない。 どういう状況で比較しようとしてるのかわらんけど、そういうのが必要になってるなら設計が根本的に失敗してる可能性を疑う。
228 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 08:27:57.44 ID:ExyrcTL10.net] >>227 レスdクス、 >コピーされることはこのシグネチャから自明。 なるほど…… >std::function は (同じ形式で呼び出しが可能なら) 違う型のオブジェクトを統一的に扱うことが目的なので入れる型を限定してしまうような構造は std::function を使う甲斐がない。 それはそう >そういうのが必要になってるなら設計が根本的に失敗してる可能性を疑う。 これはスレッドの終了時にコールバック関数を呼ぶ仕組みにおいて、 コールバック関数とコールバックを待機する関数の組み合わせが本当に正しいか待機関数側でチェックするのに使い鯛、 (コールバック関数は自由に登録できるようにする必要があり、 コールバックされたとき単に処理を進めるだけで待機の解除をなんら行わないコールバック関数とかもあるので 対応を間違ったらバグ
229 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 08:28:31.27 ID:ExyrcTL10.net] コールバック関数の自由な登録というのをstd::function<T>として登録することを考えて居たけんども 素のstd::function<T>ではチェックが自由にできないということがわかりた…… MSVCとかで関数を入れたstd::function<double (int, long)>に対し関数オブジェクトfooとしてtarget<foo>()するか 反対のことをしたらcatchできない例外が発生すた、(多分構造化例外か何かでSTLの仕様的にはおそらく未定義動作 故に素のstd::function<T>を使おうとする限り、入れるブツをdynamic_cast可能な関数オブジェクトに限定するとかしないと 手の打ちようが無いorz 現実解はstd::function<T>をwrapした「コールバック関数クラス」の創設……
230 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 11:16:19.85 ID:8BEUFbRj0.net] 別に質問すんのも気付いた事を書くのも(手短になら)いいんだけどさ >5chは漏れの日記帳…… ええ加減にせえよお前マジで 開き直ってんじゃねえぞ
231 名前:はちみつ餃子 mailto:sage [2025/06/05(木) 12:10:53.33 ID:BNqgyRrD0.net] >>229 target で指定した型と実際に入っている動的な型が合致しない場合はヌルポインタが返される仕様になっていてそれ自体は問題ない。 実際のコードがどうなってるか示されていないけれど、 >>226 の延長線のようなコードだとしたらヌルポインタ返ってきたときヌルポインタに単項 * を適用していることになるし、更にはそのメンバ関数である operator== を呼び出したりデータメンバ m_objID にアクセスしたりしてるのが全部ダメ。
232 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 13:25:12.77 ID:EjJmkkft0.net] >>229 あんまり深く理解してないけど コールバックの責任範囲(待機の解除とか)が違うのを明確に管理したい ->責任範囲の違いごとに基底クラスを用意して、コールバックは派生クラスで実装させる。 みたいなガチガチの管理がいいんじゃないんかね。 コールバック実装側にも管理する義務を押し付けられるし、基本的なフレームワーク(待機の解除手順とか)は基底クラス側で実装できる。
233 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 16:59:25.81 ID:I5agSXi50.net] 単純なんですが、わからんので教えてください。 #include <iostream> int main(){ std::cout <<"hello"s<<std::endl; } がエラーになります。なんか勘違いしてます?sは無理につけないほうがいいのかな?! $ g++ -Wall -Wextra -std=c++23 -O2 -DGNU_SOURCE main.cpp -o main g++は11.4.0
234 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 17:33:40.39 ID:Ze0QqwpuM.net] >>233 #include <string> using namespace std::string_literals;
235 名前:はちみつ餃子 mailto:sage [2025/06/05(木) 17:37:36.07 ID:BNqgyRrD0.net] >>233 結論から言うとこういう感じ。 #include <iostream> #include <string> int main(){ using namespace std::literals::string_literals; std::cout <<"hello"s<<std::endl; } s はヘッダ string の中の std::literals::string_literals という名前空間で定義されているからこういう形で using してからじゃないと使えない。 この単純なケースだけを見れば s を付ける利点は何もないけど状況次第。
236 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 17:38:38.46 ID:I5agSXi50.net] >>234 早速の返信ありがとうございました。勉強します。mOm
237 名前:デフォルトの名無しさん mailto:sage [2025/06/05(木) 17:40:53.81 ID:I5agSXi50.net] >>235 御意 mOm 色々あるのですね・・・
238 名前:はちみつ餃子 mailto:sage [2025/06/05(木) 18:41:08.81 ID:BNqgyRrD0.net] 他のいくつかの言語 (Java とか C# とか) の感覚で C++ を見ると普通の文字列リテラルの型が std::string ではなく char[] なのは引っかかりがちなところかもしれない。 常に s を付けるとそういう引っかかりを無くせるので不必要でも一貫して s を付けるような運用は悪くはないのかもしれない。 基本的にはちゃんと理解して使い分けて欲しいけどね。
239 名前:デフォルトの名無しさん mailto:sage [2025/06/07(土) 01:59:21.81 ID:8e7E0Zg00.net] emplace_backなんて便利なものあったのかよ なんで教えてくれなかったの
240 名前:デフォルトの名無しさん mailto:sage [2025/06/07(土) 02:24:44.55 ID:jKOd5e+0a.net] 最初にちゃんと教えたじゃない
241 名前:デフォルトの名無しさん mailto:sage [2025/06/07(土) 04:07:51.58 ID:tL+z2F5g0.net] 便利ってのはちょっと違うだろ
242 名前:デフォルトの名無しさん mailto:sage [2025/06/07(土) 08:30:18.62 ID:6XhFO67c0.net] う 知らなかった。rvalue Refでの実装ですよね。30%以上速くなってるみたいな。
243 名前:デフォルトの名無しさん [2025/06/11(水) 00:24:35.36 ID:PujA5y+40.net] プログラミングなんて勉強して意味あるのかな…? AIに全部もってかれそうなのに…
244 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 00:26:46.70 ID:BmOhOZog0.net] 面白いからやってるだけでは?
245 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 00:42:35.30 ID:LotBJsEG0.net] >>243 プログラミング言語に限らず自然言語も 言語の位置づけが変わったことを踏まえた 勉強が必要になったと思う
246 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 01:19:10.27 ID:oPVwdzBR0.net] こういうのは勉強したくない言い訳だから意味を答えても無駄だって聞いた
247 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 05:22:56.57 ID:X5AhUIPs0.net] 頭使ってPG組むのは自分のためなんよ なんでもAIに頼ってたら馬鹿まっしぐらで緊急時になにもできない人間に成り下がってしまうんだぜ
248 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 06:27:29.37 ID:LS0N9soX0.net] >>243 お前実際にAIでプログラミングしてないだろ? 実際やってみたらそんな感想にはならない
249 名前:デフォルトの名無しさん mailto:sage [2025/06/11(水) 07:39:00.61 ID:1mMnjHQa0.net] AIがいいプログラミング出来るように開発しなきゃならないね。
250 名前:はちみつ餃子 mailto:sage [2025/06/11(水) 09:03:36.56 ID:AWy+SoY40.net] >>243 上司の指示が支離滅裂だったらプログラミングできるか? AI にとってのお前は指示を出す上司だ。
251 名前:デフォルトの名無しさん [2025/06/11(水) 09:22:57.75 ID:IDIyuYFJ0.net] AIプログラミングってストレス溜まるらしいね AIの作成したコードに誤りがないかを人間が確認して誤りがあれば修正を指示する 人間がコードを読んでバグを見つけないといけないケースもある まるで出来の悪い部下を教育しているようでかなりの根気が必要 自分でコード書くほうがストレスフリーで楽だよ
252 名前:デフォルトの名無しさん [2025/06/11(水) 10:00:04.85 ID:7/IL82s+0.net] 新人よりはずっといいコード作るのと、速度が自分と比べても圧倒的ゆえに、プロトタイプ作るのはもう任せてしまってる まだ全部任せるのは無理だけど、5年前に今の状況伝えても笑って信じない程度には有能