X



C++相談室 part165

2024/10/28(月) 15:41:01.09ID:xcgYWtNU0
autogenerated.txt.c みたいなの使うのも手だぞ 急がば回れ
そしてCよりはうまく書ける
2024/10/29(火) 08:22:28.04ID:XRXAB2XQ0
>>514

うーん、どんなもの?それ
2024/10/29(火) 13:58:12.41ID:WYOK+g300
好きなように書いて、好きなように変換して、途中でincludeする
簡単に書くもよし、ガッチガチにチェックするもよし
2024/10/30(水) 23:11:10.17ID:x0G86HEF0
HAGE(CAUWA1)
HAGE(CAUWA2)
HAGE(CAUWA3)

みたいなテキスト作っといて
手コキストを#includeする手前でHAGEの意味を変えてやるとうまいこと一元化できる
2024/10/31(木) 00:43:29.18ID:ET2RcGMR0
カウワ?
2024/10/31(木) 01:08:33.55ID:gisW4Gdb0
magic_enum教えてやれや
じじいは感度低いから知らんか
2024/10/31(木) 05:43:35.79ID:J4xtBqBy0
みてきた それが人気の実装か
やりたいこと次第だが、オーバスペック感はある
ちょうどほしかったんなら止めないけどね
2024/10/31(木) 10:56:16.92ID:++2hP8JV0
横からなるほどー!
__PRETTY_FUNCTION__ / __FUNCSIG__
2024/10/31(木) 15:32:14.58ID:IcW65SaY0
あのー、アメリカグーグルで、検索すれば、良いのがでてきた

日本は、でてこない
これは、やっぱり、レベルなんだろうね
523デフォルトの名無しさん (アウアウエー Sae3-07nO)
垢版 |
2024/11/01(金) 19:53:27.66ID:TgBKHsuNa
>>518
あさひ奈央
2024/11/02(土) 09:17:27.71ID:KpOoS8wa0
>>522
アメリカグーグルって言い方からして頭悪そう
2024/11/05(火) 08:04:39.53ID://VVBUiD0
magic_enumは個数制限がきついんだよな・・256くらいが限度じゃなかったっけ
2024/11/06(水) 17:05:23.05ID:vfgxFq1Ya
c plus plusとjava、電子音楽作成にどっちが向いてるかな?早いのは無論c plus plusだろうけど。
2024/11/06(水) 17:09:08.31ID:jrSvpMvx0
作成というが、記述したいのか、波形合成したいのか、はたまた生成(AI等)したいのか。。
2024/11/06(水) 17:14:36.09ID:P7rcAaD30
なんでjava?
2024/11/06(水) 20:06:37.45ID:TrFjb6KE0
>>526
C++ね
記号の入れ方知らないのかな
2024/11/06(水) 20:56:51.96ID:XG1hV+N8a
C soundというのはかつてありましたが。javaでやろうかな。C++は自分にはハードル高すぎます。
2024/11/06(水) 21:37:08.81ID:O6Mhx+Gj0
相談スレなんだから相談しなさいよ。
独り言を書きたいなら X で。
2024/11/06(水) 22:48:47.88ID:tlKINjNQr
5ちゃん初めてなんでしょ。浮いてるのはほっとこう、じきに慣れてくれる

コンパイラがCらしいね。でもjavaからも操作できる実績があるって
こういうときは、「やってみて脳汁が出そうなほう」でいいとおもう
結局モチベなんで
2024/11/07(木) 03:05:44.48ID:LEgJ6Wm00
Csound は公式に Python や Java 用のラッパーは用意してるみたいだから得意なのでやればよさそう。
ところで固有名詞は正確に表記してくれないと探しにくいやで。
2024/11/08(金) 17:26:41.87ID:k0cYSKPq0
g++とclang++が混ざった環境なのですが、g++でコンパイルしたバイナリはstd::stringとか
名前に__cx11というプレフィックスが付き、一方clang++の方は__1というものが付くようです

とりあえず、clang++の方で__cx11が付くようなバイナリを生成するにはどうしたら
いいでしょうか?
2024/11/08(金) 17:28:48.87ID:k0cYSKPq0
すみません、__cx11じゃなくて__cxx11でした
2024/11/08(金) 17:41:34.61ID:Me1tPYCI0
名前だけ合わせても具体的な実装方法が違えばどうせクラッシュするから意図的にマングルルールを違えている。
https://gcc.gnu.org/onlinedocs/gcc/Interoperation.html#Interoperation
2024/11/08(金) 17:52:36.03ID:k0cYSKPq0
>>536
なるほど、要は「C++コンパイラ、混ぜるな危険」ということでしょうか?
2024/11/08(金) 18:12:15.75ID:6Qfff3nN0
例外とか互換性があるんかいな?
2024/11/08(金) 18:14:37.25ID:6Qfff3nN0
C++コンパイラでコンパイルするにしても
ソースコードをCの範囲に留めて
関数プロトタイプを
extern "C"
すれば大丈夫だよ
2024/11/08(金) 18:18:53.42ID:k0cYSKPq0
>>539
なるほど、例えばこんな感じなら大丈夫なんですかね?
g++でコンパイルされたバイナリのグループAとclang++でコンパイルされたバイナリの
グループBがあったとき、AからB(またはその逆)を呼ぶときは必ずCリンケージの関数
経由にする、とか....
2024/11/08(金) 18:25:46.25ID:Evz7xgHe0
>>540
OK。
C インターフェイスの範囲ではどちらも同じ ABI (Application Binary Interface) に従ってるはず。
2024/11/08(金) 18:35:59.90ID:k0cYSKPq0
>>541
なるほど
皆さんどうもありがとうございます
2024/11/09(土) 19:08:22.86ID:djyKk80a0
昔std::vector<T>とかstd::stringを前のコンパイラでビルドしたDLLに渡したら以下略
やっぱコンパイラを混ぜるときはextern "C" な関数にプリミティブな型のみを渡すインターフェース設計にするパティーンが安牌
文字列とか渡したかったらあくまでchar[]にすべき……
2024/11/10(日) 16:10:22.46ID:ck6aMoNGM
>>536
この場合は別々に標準ライブラリがリンクされる、つまり2つ動くのかな?
2024/11/10(日) 17:48:03.99ID:cLh8//6O0
単にリンクするだけではどっちかのライブラリのスタートアップしか呼ばれないから
呼ばれてない方のライブラリの初期化がされなくてまともに動作しない問題が残ると思う
2024/11/10(日) 18:18:05.60ID:R/A45v0+0
仮にどうにか辻褄合わせが出来てちゃんと動いたとしても将来の開発環境・実行環境でどうなるか予想しづらいというのもある。
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); // 大丈夫?
2024/11/10(日) 19:59:53.20ID:a6nPaG4v0
>>547
itr が指してる先は m の一部なのでまだ生きてる。
問題ない。
2024/11/10(日) 20:31:11.60ID:g8WH2rn90
>>548
あざっす!なるほど、よかった〜
2024/11/11(月) 00:36:44.76ID:6qsu0cnY0
>>545
ヤヴァイやん>>539しても全然OKじゃないやん……
2024/11/11(月) 00:38:49.39ID:6qsu0cnY0
ただしウィンドーズのDLLの呼び出し場合は>>539に従っていれば問題無いはず……
ランタイムの初期化エントリはDLL毎に_DllMainCRTStartup が用意されてDLL初期化時に呼ばれる
2024/11/11(月) 16:46:00.51ID:XlNa4SSE0
https://www.openwork.jp/company.php?m_id=a0910000000FrzY
2024/11/12(火) 22:22:32.82ID:svwbS+Oga
独習C++を図書館で借りました。よく、こんな、難しく、エグい言語が出来ますねみなさん。
2024/11/12(火) 22:26:44.98ID:r67kfyB40
他に選択肢がなかったんや😭

あと最近はobjective-cとかいう悪魔合体に比べたらなんでもマシな言語に思えてきてる
2024/11/13(水) 01:53:29.63ID:CoujH3FQ0
Objective-C++もよろしく
2024/11/13(水) 02:14:12.02ID:Gj2zjD3b0
>>553
汚いが、必要なものはある。
綺麗に整理されてても必要なものがないよりは良い。
2024/11/13(水) 03:47:19.43ID:rKuXlBFV0
そーだそーだ
C++は難しいからObject Pascalやろうぜ!
558デフォルトの名無しさん (ワッチョイ 25db-QT1F)
垢版 |
2024/11/14(木) 07:49:57.71ID:z8CYzrjO0
C++女学院の人々ってまだ読める所ある?
大好きだったんだけど。
2024/11/14(木) 12:23:07.88ID:DkukOutW0
>>554
C++と悪魔合体してObjective-C++とかなってるけど自分は実用的に感じた
全部それで書こうとは思わんけど、C++との共存のレベルが高くて鼻血出そうになったわ
OSやその他Apple系APIとのやり取りはObjC++、それ以外のソースはC++のみ、とかも簡単だし
560デフォルトの名無しさん (アウアウエー Sa13-vkNS)
垢版 |
2024/11/14(木) 14:52:24.21ID:a5xmyjQfa
>>553
若い人がCからC++の増築増築で可笑しくなって行った歴史をなぞるのは無意味ではない

>>554-555
Objective-C や Objective-C++ の方がまし


やる気は無いけどObjectPASCALはDelphiだっけ
561デフォルトの名無しさん (JP 0H1e-hB9O)
垢版 |
2024/11/19(火) 11:41:41.34ID:1x1cv+pZH
演算子のオーバーロードない言語はダメだ
2024/11/19(火) 11:53:31.53ID:5+FMYvHmM
演算子オーバーロードがもたらす言語仕様の複雑性を理解してたら軽々しくそういうことは言えない
2024/11/19(火) 12:47:14.19ID:3l+Mgxo20
演算子なんてなしでも書けるわけで単なる見た目だよ
些末な話
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); とか長くなり過ぎて何をやってる式なのか分からなくなる
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
複素数計算やったことないからそんなこと言える
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
†とか造った?
2024/11/20(水) 21:14:42.80ID:GASOinjS0
Javaが持て囃されてた頃は「演算子オーバーロード?+で引き算もできるってこと?なんて危険な機能なんだ!」って叩かれてて
そんな危険なものはJavaにはありません!って売り文句にされてたんだよ
アホみたいだけど本当の話
2024/11/20(水) 21:21:46.59ID:JO5RbARc0
アホといい切れる根拠は言える?
2024/11/20(水) 22:54:39.86ID:g9sD9hG/0
アホみたいなカスの嘘です
2024/11/20(水) 23:28:22.48ID:KXgtJp1v0
演算子オーバーロードは定義のリスクや手間の割には結局自己満に完結する事が多くて、
しかも結局C++という小さな世界でしか通用しないから、他に楽しい事が沢山ある今の人は時間の無駄と考えるんじゃないかな
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: 不可

こういう型表現もできるのは良い点
2024/11/21(木) 01:22:06.15ID:KgLYxoZg0
初見で単に整数で取り出すのに一苦労だけどな
型安全厨くささ感じる
2024/11/21(木) 08:22:14.09ID:5MMZVDCg0
演算の組み合わせが多いユースケースで可読性を上げるためのものだろう。
少ないなら関数のままでも十分。そういう意味で std::chrono は微妙。
580デフォルトの名無しさん (JP 0H1e-hB9O)
垢版 |
2024/11/21(木) 10:15:07.08ID:F4Mnbej3H
>>575

あんた他人の受け売りだろ。fortran90にだって演算子オーバーロードあるのに
581デフォルトの名無しさん (JP 0H1e-hB9O)
垢版 |
2024/11/21(木) 10:20:45.90ID:F4Mnbej3H
>>571
随伴行列(共役転置行列)か? それは演算子オーバーロードじゃなくて普通の関数でいいだろ
2024/11/21(木) 19:11:25.04ID:U8jioV5J0
いわゆる演算子オーバーロードのメリットは、中置記法が使えるということと、一部の人間が使い慣れている演算子の算数・数学的記法のメタファーが使えることくらいかね。

その代償として文章構造の曖昧さや(その対処のための)優先順位といった規則の複雑化が必要になるので、言語設計観点からはメリット小さいよなぁ。
可能ならば中置記法を捨てて全部後置記法に統一したいところ。
583デフォルトの名無しさん (ワッチョイ 5f01-P+OA)
垢版 |
2024/11/21(木) 20:19:29.77ID:i1qXvmQ+0
嫌だよ! PostScriptじゃあるまいしw
2024/11/21(木) 22:03:09.07ID:vge40qUE0
チョムスキーの言語生得説って数学記号(の文法)も説明し切ってたっけ;;;
個人的には数学記号をプログラミング言語の文法に含めるのは悪手に思える
全部言葉にすべき
2024/11/21(木) 22:32:36.81ID:UrWSESvu0
そうだな
(8.0 * std::numbers::pi * G) / (c * c * c * c * mu0)よりも
divide(multiply(multiply(8.0, std::number::pi), G), multiply(c, multiply(c, multiply(c, multiply(c, mu0)))))の方がずっと分かりやすいもんな
2024/11/21(木) 23:37:39.60ID:w61o9EHy0
>>585
君どんくさいな
その括弧やカンマも排除するんだよ
2024/11/21(木) 23:41:45.40ID:i1qXvmQ+0
8.0 pi mul G mul c c mul c mul c mul mu0 mul div
2024/11/22(金) 12:04:14.61ID:OZOUVDIp0
>>585
後置記法なら
(8.0 std::numbers::pi G)を掛ける
(c c c c mu0)を掛ける
割る
みたいな感じかな。
2024/11/22(金) 16:24:36.41ID:prOH0XeSM
>>588
>>587
2024/11/22(金) 17:47:03.18ID:ckHOQP240
ポーランドにでも移住しろ
2024/11/22(金) 20:09:04.65ID:YUhadtJk0
政治的発言でチョムスキーは晩節を汚したな
2024/11/22(金) 23:05:27.32ID:qWC0+5lZ0
絶対数に平方の係数の四倍を掛け、中間項の係数の平方を加え、同平方根をとって中間項の係数を引いてから、平方[の係数]の二倍で割ったものを出力せよ
593aser-fgki (JP 0H1e-hB9O)
垢版 |
2024/11/22(金) 23:22:42.09ID:TibAXEMeH
>>585は痛烈な皮肉を言った。>>590は昔、HPの電卓が採用していた逆ポーランド法を連想して「ポーランドに行け」と言った。深いわ、ここのスレ
594デフォルトの名無しさん (JP 0H1e-hB9O)
垢版 |
2024/11/22(金) 23:31:47.69ID:TibAXEMeH
怖ヒから、退散します。
2024/11/22(金) 23:46:57.45ID:YUhadtJk0
どんな記法でもメソッドチェーンできれば勝つる
2024/11/24(日) 06:44:31.77ID:CW4G8jt70
昔Turbo C++とか使ってたなあ
2024/11/25(月) 11:18:23.17ID:mvnjDr0E0
>>593
それも算数を習っていて、記号の意味や結合の優先順位、()グループ化のトレーニングを受けている前提だろ。

中置記法ではなく前置記法のトレーニングを受けている想定なら
/(*(8.0, std::number::pi, G), *(c,c,c,c,mu0))
だし、日本語ベースの後置記法なら中置記法のような特別なトレーニング無しで>588ぐらいは使えるかと。
2024/11/27(水) 11:39:09.65ID:cLo+/Enba
やっぱり、C++は、難しいんで、慣れてるjavaで音楽ソフトウェア作ります。皆さんの健闘を祈ります。best regard
599デフォルトの名無しさん (JP 0H4f-6m00)
垢版 |
2024/11/28(木) 01:12:28.19ID:aCNd/9ZkH
ちん逃げやがったな。俺も人のこと言えんけど。
600デフォルトの名無しさん (ワッチョイ bfcc-6m00)
垢版 |
2024/11/29(金) 12:44:20.48ID:IhkudQsu0
Javaの構文的美しさは素晴らしかったけど
他言語に引っ張られて汚れてしまった
それならC++のほうが良い
何でもできるから
601デフォルトの名無しさん (ワッチョイ bfcc-6m00)
垢版 |
2024/11/29(金) 13:41:39.20ID:IhkudQsu0
やりたいことが出来る言語と
やりたいことが出来ない言語
2024/11/29(金) 16:19:14.67ID:xzsI3pih0
なんでもできるは他を知らないだけだろ
2024/11/29(金) 17:33:38.53ID:BYCpquOz0
一応、自分の技量と気力で、希望するわがままが通るかは、調べてみるけどね
604デフォルトの名無しさん (JP 0Hdf-/Vqe)
垢版 |
2024/11/29(金) 18:57:30.48ID:ZW4PTdY8H?2BP(1000)

EchoAPIは私のVS Codeのセットアップに素晴らしい追加となり、APIテストがとても簡単になった
605デフォルトの名無しさん (ワッチョイ 7f7e-zwOW)
垢版 |
2024/11/29(金) 22:11:11.77ID:C48YuSW20
やりたいこと以外何でもできる言語
2024/11/29(金) 23:01:12.73ID:BYCpquOz0
やりたいことはできない。(サボりの)どうでもいいことはできる。ってほっとけww
607デフォルトの名無しさん (アウアウエー Sadf-wjfe)
垢版 |
2024/11/30(土) 09:53:14.46ID:l0dFcapba
x C++が難しい
o 頭が悪い
2024/11/30(土) 12:21:10.79ID:tlb45efI0
c++が簡単ってまあ勘違いだろ
脱初級で全部わかった気になるやつ
個人的に尊敬してる人でも難しいと言ってる
2024/11/30(土) 13:56:11.47ID:exhSsXMya
javaで、簡単なドラムマシン作りました。C++では、到底オツムが良く無い僕には無理です。皆さんの健闘を祈ります。
610デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 18:28:00.78ID:IuCKzQHfH
xxx.h で namespace A { size_t intval, count, itr; } を宣言。もちろん、インクルードガードしてる。

ところが、作ったライブラリをテンプレート対応に修正したら、「intval, count, itr」が2重定義されてます。」
という旨のLINK1169のエラー(Visual Stuio 2022)が突然出てきた。前のライブラリではこんなエラー出てなかった
のに...ナンデダロー、ナンデダロー♪と悩んでいたが、

namespace A { extern size_t intval, count, itr; }

を宣言したら解決した。extern_や外部リンケージのことがが良くわからない。調べたら通りいっぺんのことは
わかるけど。LINK1169のエラーが出たら、extern宣言してみてLINK1169を殺す、という対症療法だけ学習しました。
611デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 18:28:57.10ID:IuCKzQHfH
くそ!また改行がめちゃくちゃ
2024/12/01(日) 18:31:33.21ID:NWNsoufr0
MAPファイルの読み方を研究した方が良いかもな
613デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 18:32:40.91ID:IuCKzQHfH
それに誤字だらけだし。オワタ。高齢者の認知症検査試験大丈夫かな。5年後だけど。
2024/12/01(日) 19:20:01.62ID:rI1+OlKH0
>>610
定義はプログラム全体でひとつとする原則 (one definition rule) は診断不要な場合がある仕様になっていて処理系が問題を検出できなくてもかまわないことを意味する。
つまりエラーが出てなくても間違っている (未定義の挙動) かもしれないので理解せずにエラーメッセージに頼るのは悪い姿勢。
615デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 19:34:57.34ID:IuCKzQHfH
テンプレートにすると(implテクニックを使わなければ)、定義も実装も同じファイルに書かなければならないからそれが原因かなあ。とりあえず、厄介なLINKエラーは除霊されました。
2024/12/01(日) 20:25:56.70ID:rI1+OlKH0
>>615
テンプレート内でグローバル変数にアクセスする箇所があるってこと?
それなら今はインライン変数を使うのが便利で行儀の良い作法のひとつだと考えられている。
インライン変数は C++17 からの機能なのでそれより古い規格しか使えないような事情があるなら仕方ないんだけど……
617デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 20:32:06.26ID:IuCKzQHfH
>>616

ありがとうございます。調べてみます。
ちなみに、>>615 定義も実装も → 宣言も定義も ええいくそっ! まーた間違えた
618デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/01(日) 21:38:54.98ID:IuCKzQHfH
>>616

まーた、言い忘れました。まさにその状況でした。
619デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/02(月) 22:09:00.59ID:/dQ47H+wH
[][]演算子のオーバーロードが欲しい。行列を1次元配列で実装する場合、C++は行主順(行列を行ベクトルの集まりとみなす)。Blas、lapackのライブラリをビルドしたfortran77は列主順(行列を列ベクトルの集まりとみなす)。()演算子のオーバーロードでは、行主順だろうが列主順だろうが、行列Aのi行j列の要素にはA(i,j)とアクセスできるが、列主順の場合には[]演算子のオーバーロードをどうやってもA[j][i]となってしまう。それでeigenは()演算子のみをサポートしている(本当か?)。だが、A(i,j)が添字0から始まるのが気に入らん。添字が0から始まるのはA[i][j]やろうもん。
[][]のオーバーロードがあったらなあ。
2024/12/02(月) 22:22:03.04ID:7rlMEi700
propertyなら簡単に多次元配列扱えそうなのに
propertyいつになったら実装されるのやら
2024/12/02(月) 22:30:10.13ID:6C6t/Sm50
>>619
O [][]演算子のオーバーロードが欲しい。
O 行列を1次元配列で実装する場合、C++は行主順(行列を行ベクトルの集まりとみなす)。
O Blas、lapackのライブラリをビルドしたfortran77は列主順(行列を列ベクトルの集まりとみなす)。
X ()演算子のオーバーロードでは、行主順だろうが列主順だろうが、行列Aのi行j列の要素にはA(i,j)とアクセスできるが、
X 列主順の場合には[]演算子のオーバーロードをどうやってもA[j][i]となってしまう。
O それでeigenは()演算子のみをサポートしている(本当か?)。
X だが、A(i,j)が添字0から始まるのが気に入らん。
X 添字が0から始まるのはA[i][j]やろうもん。
O [][]のオーバーロードがあったらなあ。

行頭Xで示した文章の意味が良く分からん
622デフォルトの名無しさん (JP 0Hf2-Dj8N)
垢版 |
2024/12/02(月) 22:40:34.32ID:/dQ47H+wH
ああ、そう。
ところで、A(i,j)が添字0から始まるのが気にならないんだ。じゃあ、もうええわ。
2024/12/02(月) 22:51:18.89ID:Fo02P0Bv0
msvc4.xxにoprater delete[]をoverideする機能が無い
所からCOMの仕様が策定されている所を考えると
面白いな
2024/12/02(月) 22:58:33.93ID:6C6t/Sm50
>>622
日本語の意味が分からんと書いている
0オフセットが嫌ならiやjから1引けば良かろうもん?
2024/12/02(月) 23:07:19.64ID:5A4jg9rQ0
>>619
[] がカンマで区切られた複数の引数を受けとる機能は入る見込み。
そのための前準備として [] の中でカンマ演算子を使うのが C++20 から非推奨になってる。 必要なら括弧で囲めばいいだけだから深刻な互換性問題にもならんだろうし。

[][] をオーバロードするとなると辻褄合わせが難しいだろうから入ることは期待できないと思う。
2024/12/02(月) 23:09:49.14ID:5A4jg9rQ0
>>625
あ、アンカーを間違えた。 >>619 にすべきだね。
すまぬ。
2024/12/04(水) 01:53:48.90ID:DpkrBRqF0
結局はベクトルや行列の演算の何かなんだろうから
二重配列を直接操作するというよりベクトルや行列のオブジェクトの演算を
定義する、演算子オーバーロードする、とかそういうコードを一旦書くわけには
いかないのかな?
2024/12/04(水) 11:10:28.05ID:1b6O8ksjM
[][]演算子が出来たら
[][][]の解釈に困るからできない

というより
[]が一つの演算子だから[][]はないし混乱のもと
[ , ]が正当
629デフォルトの名無しさん (アウアウエー Sa6a-VZt9)
垢版 |
2024/12/05(木) 20:29:34.16ID:bsPx8jUja
pythonみたいにhoge[:,:,::-1]みたいな描き方したい
operatorオーバーロードの仕方教えてくれ
2024/12/06(金) 19:13:10.74ID:Ed4tJtIh0
どうしてもやりたいならユーザー定義リテラル使ってhoge[":;:;::-1"_slice]とか書かせるかなあ
2024/12/07(土) 17:49:57.38ID:hZoDLS6H0
[,]とカンマ演算子の優先順位はどうなるんじゃ……
まあすでに関数の引数部分で似たような状況((, , ,))だから良いのか……
2024/12/07(土) 19:05:42.44ID:bmFGOE/o0
>>631
先述 (>>625) の通り [] 内での (丸括弧で囲まない形での) カンマの使用は C++20 から非推奨。
これは変更に対する布石で、 C++23 からカンマは引数の区切りのカンマとして解釈されることになった。
解釈が変わる (互換性が維持されない) 変更なのだが、大量の既存のコードを検証してそれが問題になるような使い方はほとんどない (あっても簡単に迂回できる) と判断された。
2024/12/08(日) 19:55:22.57ID:R/m6cDay0
mdspan でいいんじゃないかと
2024/12/30(月) 01:24:05.36ID:QjoRUJvQ0
>>316
char name[] = "sazaesan";

これ配列リテラルちゃうの?
nameはポインタだが
dc エリアに sazaesan\0 格納されるだろ
2024/12/30(月) 02:23:21.03ID:OlG90g3v0
その話はもうええわ
2024/12/30(月) 03:22:33.37ID:vy8OYYFk0
>>634
> これ配列リテラルちゃうの?

文字列リテラルは配列の一種ではあるが、この場合は配列一般を表すリテラルはないという意味。
(C にはコンパウンドリテラルがあるし、一部の処理系では C++ でも使える拡張があるけど。)
初期化子に現れる波括弧が配列リテラルだと誤解しているらしいことについての指摘なので文字列リテラルも配列リテラルだというのは関係がない。

> nameはポインタだが

いいえ。 name は配列。

> dc エリアに sazaesan\0 格納されるだろ

これはリテラルかどうかの話とは関係がない。
2024/12/30(月) 08:13:16.60ID:QjoRUJvQ0
>文字列リテラルは配列の一種ではあるが、この場合は配列一般を表すリテラルはないという意味。

おおっと苦しいねぇw
2024/12/31(火) 23:26:05.62ID:xpoxeW+N0
>配列リテラル
そもそもこの言葉がおかしい
配列リテラルなんてものは存在しない
リテラルは数値や文字、文字列の変更不可な定数を指す用語で、配列等の変数とは間逆の存在
配列は文字列リテラルとかで初期化はできるがリテラルには分類されない
主にjavascript界隈で平気で配列リテラルなんて説明してるサイトがあるが全部間違い
2025/01/01(水) 11:07:42.20ID:KjvDobUm0
>>638
英単語としての literal の意味にそぐわなくても、言語仕様でリテラルという用語を割り当てられたならリテラルというしかない。
JavaScript (ECMAScript) のことはよう知らんけど仕様を見たら [] で囲んで配列を表現する文法には ArrayLiteral と書いてあるぞ。

https://262.ecma-international.org/15.0/index.html#prod-ArrayLiteral
2025/01/01(水) 11:14:58.75ID:MMGltyx80
まぁ言葉の競合なんて稀によくあるし
2025/01/02(木) 03:10:49.97ID:2OQRwfH2a
独習C++今から読みます。
2025/01/02(木) 12:45:54.07ID:dC27qXct0
そうか。
2025/01/02(木) 17:05:43.34ID:ZvjFvgyg0
>>639
そこ見たけどリテラルについては13.2.3 Literalsで定義されてるし
ArrayLiteralで検索したら13.2.4 Array Initializerと書いてあるから、ArrayLiteralはただの誤植だろ
そんなのを根拠にして配列リテラルなんておかしな説明が広まってるのか
2025/01/02(木) 20:16:05.92ID:dC27qXct0
どうだろ?
同じものでも切り口によって呼び名が違うことはあるじゃないの。
たとえば字句的には識別子と呼ばれてるものが構文の上では変数だったり型だったりするわけで。
本当になんの使い分けの意図もなく単なる間違いなんか?
いやまあ、私はよう知らんから本当に間違いなんかも知らんけど。
2025/01/03(金) 05:19:23.99ID:TELQMEJN0
>>643
だから
値による Initialize と Literal がどーちがうというんだ
何をこだわってるの?
2025/01/03(金) 08:22:15.04ID:N2a/+7s70
用語は概念と結び付いてる。
理屈の建て付けが用語に現れているのだから用語の間違いは理屈の理解の誤り。
こだわるべき。

訳の都合とか歴史的事情でわかりにくい変な用語になってるのもよくあることだけどな。
2025/01/03(金) 15:37:54.39ID:N2a/+7s70
常に厳密であるべきとまでは言わないけど、必要なときに説明できる程度にはね。
2025/01/03(金) 16:40:53.84ID:nAACv6m40
せやな
2025/01/04(土) 19:25:11.41ID:Dnxz33hn0
ECMAScript® 2024 Language Specification
A Grammar Summary
https://tc39.es/ecma262/2024/multipage/grammar-summary.html#sec-grammar-summary
より抜粋
| PrimaryExpression :
| Literal
| ArrayLiteral
| ObjectLiteral
| RegularExpressionLiteral

| Initializer :
| = AssignmentExpression

camel case の『ArrayLiteral』等は文法記法上のシンボルであり専用の(斜体)フォントが使用されている。
『ArrayLiteral』は『PrimaryExpression』の下に『Literal』や『RegularExpressionLiteral』等と並んで定義されているので『Literal』の下には無い。
これを踏まえて、何故『ArrayInitializer』というシンボル名にしなかったのかという疑問なら話が分かる。C や C++ の『Initializer』関連も参考になる。
2025/01/04(土) 19:40:45.61ID:tP/ja7AQ0
その話つまんないから
2025/01/04(土) 19:51:17.23ID:1P+FhTZO0
関西人が河童を追い払う古代遺跡、カッパドキヤ
2025/01/07(火) 15:04:17.79ID:njoKzNHl0
初心者が聞いたら間違いなく混乱するなこりゃ
普通リテラルってデータリソース「表現」のレベルでメタキャラと対な概念、って点をまず押さえるべきなんじゃないかと
Cならバックスラッシュがリテラルかメタキャラかはシングルクウォートで囲まれるかダブルクウォートで囲まれるかで変わる、みたいな感じで

あと表現と「実装」(配列orリストorタプルetc.)をごちゃ混ぜに議論してるのも良くない…気がする
JSでの用語用法に関しては正直どうでもいい他所でやれとしか
2025/01/09(木) 16:41:07.20ID:G2VPgYgX0
>>646
こだわってるのはお前だけ
しかも値によるInitializeとLiteralは用語の間違いではなく同じものでしかない
寝言ほざくな
2025/01/09(木) 16:43:12.80ID:G2VPgYgX0
このはちみつなんとかて
なんでこのスレにずっと張り付いてるの?
2025/01/09(木) 17:53:02.65ID:pauriN870
コテハンだから目立つというだけで、名無しでずっと張り付いてるのもいるでしょ
2025/01/10(金) 15:09:57.30ID:5TDMwabH0
むしろこの手のスレで名無しのすべてが毎回入れ替わって別人なんだと思えるほうが異常とも言える
2025/01/10(金) 19:09:29.05ID:Sq5TZMET0
名前が売りたいならtwitterとかで活動された方がいいんじゃないのと思っている
2025/01/10(金) 19:28:58.52ID:5TDMwabH0
は?w
はちみつ餃子なんて名前売って何になるってんだ?
ペンネームかなんかで活動しているわけでもないのに
2025/01/10(金) 19:32:01.54ID:2xRvglud0
名前が広く知られる必要も意味もない。
話を追いやすくするのが主目的であって「私」というキャラクタを主張したいわけではないので、むしろ意図的に 5ch 上でだけはちみつ餃子と名乗ってる。
(元々はSCHEME餃子と名乗っていたが Scheme スレ以外にも書き込むので変えた。)
Twitter (X) のアカウントも持ってはいるけど。
2025/01/10(金) 19:36:59.79ID:2xRvglud0
議論してても別の主張と混同されたり自演認定してくるやつがいたりして本筋からズレまくって面倒くせぇことが結構あるんだよ。
コテハンはコテハンでなんだかんだ言うやつがいるからどっちもどっちで面倒くせぇけどな。
2025/01/11(土) 12:15:30.40ID:RVo7o+pP0
酉だけで十分では
2025/01/11(土) 20:48:36.46ID:bI8uLgjvr
「一応署名」するんなら、CNはあったらいいぞ
2025/01/18(土) 07:24:59.91ID:Kzk7GzSP0
動作から見るポインタと配列の違い……
char arr[] = "abc";
char* p = &(arr[0]);
assert(&p != &(arr[0]));
assert((void*)arr == (void*)&(arr[0]));
いや知らんけど多分……

メモリ割り付けまで見たらもっとはっきり違いがわかるパースン
2025/01/18(土) 07:27:41.04ID:Kzk7GzSP0
訂正orz……
誤: assert((void*)arr == (void*)&(arr[0]));
正: assert((void*)&arr == (void*)&(arr[0]));
2025/01/24(金) 23:21:44.53ID:U5y9xmGO0
コンパイル時にsoファイルをリンクする時って参照されるsoファイルを参照している側よりも後ろに書くみたいなルールあると思うんだけど、
このルールに従わずsoファイルを前に書いた時にコンパイル成功する環境と失敗する環境がある

失敗するときのエラーはundefined reference errorでso側を参照しているところでエラーになってる

gccのバージョンは一応同じで、OSはwslのUbuntuとRedHat
Redhat側で成功している
コンパイルするときのコマンドは同じもの

原因ってどのへんにあるのかわかります? あるいは何らかの設定で回避できるとか

似た事象でこの辺が引っかかったけど答えはなかった
ttps://forums.debian.net/viewtopic.php?t=152808
2025/01/25(土) 00:01:43.45ID:xAYAQReB0
環境変数の違いじゃないのLD_PRELOADとか
2025/01/25(土) 15:04:34.61ID:Q3LYFAxD0
LD_PRELOADが影響与えるのは実行時なのでは?
2025/01/25(土) 15:11:01.85ID:LC7IJQQw0
せやな

書ける範囲で具体的なオプションを書いてくれると助かる
もしかしてディストリでsoの置き場所が違うのにそれに対応してないとか?
2025/01/25(土) 17:20:55.15ID:W3I6NstP0
使ったことないけどマニュアル見る限り-tでリンクするファイル表示できるっぽいな
2025/01/25(土) 18:16:04.92ID:s6qQIUHWa
今日から、reasonというDTMソフトの、rack extentionを作るために学ぶことに決めました。
2025/01/26(日) 10:12:34.34ID:bIavjdz2a
core javaみたいな、書籍がC++にも無いかなあ。
2025/01/26(日) 16:16:40.95ID:ZRokd9b50
>>668
遅くなってすまぬ
だいたいこんな感じ

失敗するコマンド
g++ -L$LibPath -lTestLib -o Test main.cpp

成功するコマンド
g++ -L$LibPath -o Test main.cpp -lTestLib

TestLibのファイル名はlibTestLib.so

このあたりを読むに(ttps://www.cprogramming.com/tutorial/shared-libraries-linux-gcc.html)
リンク時のライブラリ指定の順番的は後者が正しいと思うんだけど、なぜかRedHatの方だとエラーが出ない

RedHatの動的ライブラリ周りの記述を見ると"gcc ... -Llibrary_path -lfoo ..."みたいな書き方しかしていない
https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/9/html/developing_c_and_cpp_applications_in_rhel_9/using-libraries-with-gcc_assembly_creating-c-or-cpp-applications#using-a-dynamic-library-with-gcc_using-libraries-with-gcc
2025/01/26(日) 21:28:32.98ID:h08Ozzg50
Redhatで俺様パッチでも当たってるんかな?
2025/01/27(月) 10:03:20.61ID:CEXr069M0
GNU Linker では順番通りに一度しか探査しない仕様なので指定の順番に意味がある。
どういう順番でも通るなら GNU Linker 以外が設定されてるんじゃないのかな。
g++ はフロントエンドに過ぎないし、呼び出すリンカを変えるように設定は出来る(されてるかもしれない)よ。
2025/01/31(金) 00:55:21.04ID:07X4f1Va0
そういえばリンカーが何かって確認してなかった
後で確認してみる。ありがとう
2025/02/10(月) 11:15:20.00ID:cWC6BpGk0
主要なリンカとしては gold, lld, mold などがある。
これらに比べると GNU Linker は単純に遅い。
ただ、オブジェクトファイルの構造には文書化されていない場当たり的に決められた不明瞭な部分も多くてよくわからんところは「GNU Linker の挙動が仕様」みたいな扱いなので確実に「正しい動作」を期待する保守的なディストリビューションは GNU Linker を採用することも結構ある。
2025/02/10(月) 17:33:04.35ID:fQxZ+XGm0
グローバルな変数を使う時って、
namespace hoge{ constexpr int hoge; };

class hoge{ static int hoge; };
のどっちを使うべきですか?
2025/02/10(月) 18:47:33.05ID:6W8L/x5D0
どうでもいい
好きにやれ
2025/02/10(月) 19:05:23.46ID:FgXBIPm00
上のconstexprはいらない
何のためにつけたか不明だが
2025/02/10(月) 19:22:59.53ID:LsLUwoXt0
昔はグローバル変数の代わりに関数のstatic local 変数を使ってたけど、最近はどうなのかしらん?
2025/02/10(月) 19:32:01.21ID:cWC6BpGk0
>>677
どちらの変数もグローバル名前空間スコープで宣言されていない。
2025/02/16(日) 10:13:30.97ID:AY7cmtZI0
namespace foo { int hoge; } だとusing foo::hoge; ができるが
class Foo { public: static int hoge; } だと using Foo::hoge; できない
という印象、
2025/02/16(日) 10:17:01.36ID:AY7cmtZI0
オブジェクトの寿命がプログラムの開始から終わりまでずっとあるがグローバル名前空間スコープで宣言されていないがために
グローバル変数と言ってはいけないならが
オブジェクトの寿命がプログラムの開始から終わりまでずっとあるがグローバル名前空間スコープで宣言されていないオブジェクトは
何て言えば良いんじゃ……
2025/02/16(日) 10:19:16.22ID:3LJfyOAU0
>>683
静的記憶域期間の変数
2025/02/16(日) 10:21:00.02ID:AY7cmtZI0
今やDouble-Checked Locking is Fixed In C++11されたのだから
static local 変数を使う意味は無くなた
※ 個人の感想です
2025/02/16(日) 10:23:32.78ID:AY7cmtZI0
>>684
なるほど……
これからはレビューでグローバル変数と口走る香具師が居たらすかさず訂正を要求するわ㌧クス、
2025/02/17(月) 10:05:32.77ID:tIRsmIw80
言語仕様 (C++23) 内でグローバル変数 (global variable) という語を使っている箇所を検索してみたら二箇所みつけた。
https://timsong-cpp.github.io/cppwp/n4950/diagnostics.general#2
https://timsong-cpp.github.io/cppwp/n4950/fs.op.current.path#5

前者は意味がわからん……英語と C++ に詳しい人は解説してくれんか。
後者はどこで変更されるかわからんものというニュアンスで、文法上の分類としての意味はなさそう。
2025/02/17(月) 10:30:13.63ID:afCQWVrm0
errnoのことでしょ、昔は本当にグローバル変数だったらしいし、そのせいか今も「errnoはグローバル変数です」って説明がそこら中に転がってる
そこセクション概要だし、後者と同じで別に言語仕様上の意味はないと思う

お客様の中にC/C++/UNIX/POSIXそれぞれにおけるerrnoの仕様/記述の歴史家はおられませんか
2025/02/18(火) 00:30:31.98ID:lk7OswCX0
>グローバル変数とは、複数の関数から使用できる変数のことを言います。
>グローバル変数は、関数外で宣言された変数です。
>一方、関数の外側でも変数を宣言できます。 これを グローバル変数 と言います。
ぢつは自動変数以外はTLSもファイルスコープのやつも静的記憶期間の変数も全
部グローバル変数だったりして……
2025/02/18(火) 00:33:19.53ID:lk7OswCX0
当然オブジェクトのメンバ変数も関数の外でクラスが定義されている限り、
自動オブジェクトであってもメンバ変数は例外なくグローバル変数である
という定義にしたら単純で誤解の余地も無い
2025/02/18(火) 00:44:49.13ID:lk7OswCX0
しかしよく考えたら
>グローバル変数とは、複数の関数から使用できる変数のことを言います。
には他の関数に参照渡しされた自動変数も含まれるから、アドレスが関数外に流出して
メモリエリアシングの可能性がある変数はみなグローバル変数ということなのかも……
692デフォルトの名無しさん (ワッチョイ 6eda-u+d+)
垢版 |
2025/02/24(月) 18:03:30.63ID:0Dav+b+p0
現在C++を勉強しています
規格書を読んで分からないところはChatGPTに質問すれば
大体解決してしまうのですが、こんな楽な勉強方法でいいんでしょうか?
昔、入門書読んでは挫折を繰り返してたのがバカバカしくなりました
2025/02/24(月) 18:13:54.21ID:0Bg+pEV3M
>>692
それ何の心配?
そもそもプログラミングをAIにやらせること考えたら?
2025/02/24(月) 21:25:46.59ID:JORyVgSx0
良い時代になったね
2025/02/25(火) 16:07:34.32ID:6jOr+W/20
初心者は何が分からないのか分からない。
つまり的確な質問は出来ない。
要領を得ない質問から上手く察して回答するのは難しいよ。
(人間の指導者でも。)

学習の最序盤では入門書を読んで一方的に知識を詰め込む段階は要ると思う。
(それによって最低限に意味が伝わる質問が出来るようになる程度には。)
基礎を詰め込んだ後なら詳細を規格から探し回るよりは AI のサポートがあると便利ではあるかもね。
2025/02/26(水) 09:46:27.50ID:nAW17uc20
超賢い検索サイトだと思って付き合ったらいい
いきなり答え出ちゃったり、違うそうじゃないっていうのが出たり
楽しめるようなら楽しめる
2025/02/26(水) 20:06:27.25ID:lLwolgid0
初心者用のC++スレってここでいいですか?
2025/02/26(水) 22:17:10.74ID:6jOr+W/20
>>697
特に初心者向けというわけではありませんが、初心者が駄目なわけでもありません。
C++ 関連の雑多な話題のスレという感じですね。
2025/02/27(木) 11:05:40.67ID:+3VmvrWI0
>>698
ありがとうございます
最近勉強を始めましたので分からないことがありましたらご教示いただければと思います
700青木康善 (ワッチョイ 09f9-8/4C)
垢版 |
2025/02/28(金) 21:57:23.23ID:p5+awhy00
DTMソフトのReasonのRack Extensionを作るのに、C++を覚えなきゃいけなくなりました。

独習C++とchat GPT頼りになんとか作りたいです。

環境変数の段階で躓いてます。
2025/02/28(金) 23:50:16.76ID:s8Qhss0ud
環境変数の話はC++の話ってより、Unix系の環境でのUIの話になるんだよね。
シェルスクリプトが中心にいるような世界だと、ああいうやりかたで設定するのが便利だったっていう。

正直、とりあえず無視して進んでもいい話だと思うよ。
優先度低いから、必要になってから学び直す感じで。
2025/03/01(土) 00:04:13.00ID:2btke4iS0
>>700
プラグイン的なものを作る場合はベースになるソフトの仕様に従わなければならない。
設計思想を理解するのは自分で一から設計する場合とは違った難しさがある。
入門書を読んだ程度で取り組むには ChatGPT の助けを借りても難しすぎるように私には思えるが……。

>>701
開発環境構築にあたって設定しなければならない (処理系や開発環境が参照する) 環境変数がよくわからんとかいう意味だと私は理解してた。
もしそういう意味なら必要になってからというんじゃなくて今必要なんだろ。
Java の経験はあるようなので環境変数の概念がわからんとかではないと思う。
2025/03/01(土) 01:37:40.11ID:YfcGT65Md
ああ…その発想はなかった。
そういう意味なら全くの見当外れなレスだったから、忘れて。
704デフォルトの名無しさん (アウアウウー Sa39-c/TO)
垢版 |
2025/03/01(土) 11:39:29.07ID:dZ2eBKvGa
VSTの話かと思ったz
2025/03/01(土) 20:32:44.09ID:j9/xcCww0
まだ、chatGPTに「こういうプラグイン作って」で済む時代ではないのか
2025/03/02(日) 16:59:51.21ID:13MOl4uH0
グルーコードは頼んだら書いてくれそう
そういうのこそ、webから情報収集してもらって、AIに組んでもらいたい
2025/03/02(日) 20:49:33.30ID:SR9sVVs70
「とりあえずHello World出すプラグイン書いて」とか「この情報どうやって取得すんの?」とかは今のAIでもやってくれるから
その手のコード書き捨てるのは格段に楽になった
2025/03/03(月) 01:18:59.95ID:KmDT379s0
マイナーなライブラリの使い方きいたらデタラメばっかだよ
2025/03/03(月) 01:53:36.51ID:t7PhNKj40
https://i.imgur.com/WuNDS00.png
まぁな
710デフォルトの名無しさん (ワッチョイ 2ba2-KWHx)
垢版 |
2025/03/03(月) 09:52:35.09ID:ZrscZeKh0
>>708
結局ところ学習ソースはネットだからネットで情報の少ない分野がいい加減になるのはしゃーない
2025/03/03(月) 10:09:12.99ID:11DxD7kOM
>>710
しゃなくはない
単なる現段階の技術的制約にすぎない
わからんものはわからんと言うべき
簡単に受け入れるな
2025/03/03(月) 10:23:10.28ID:Hx0aO5p40
自動小説製造機になに期待してんだか
2025/03/05(水) 18:11:47.24ID:+YosNdhq0
AI が人間の知能を模倣しようとする試みである以上は人間に似た限界もある。
何もかもの専門家であることは出来ない。
無料で使える ChatGPT はその性質上、汎用 AI として調整されてるし使えるリソースは少なめなのでこれで AI を判断しないほうがいいよ。
プログラミング専用に訓練した AI は本当に賢い。
714デフォルトの名無しさん (ワッチョイ 7956-s+rv)
垢版 |
2025/03/05(水) 18:48:09.02ID:LRhSWm980
プログラミング専用ってどゆこと?
2025/03/05(水) 19:22:05.63ID:P80r5h460
Clineとかじゃね?しらんけど
716デフォルトの名無しさん (ワッチョイ 7956-s+rv)
垢版 |
2025/03/05(水) 19:41:16.61ID:LRhSWm980
プログラミングの専門家ってなに?という疑問
言語仕様や構文、標準ライブラリに詳しい人またはAIのことかな?

でもそれって特定ビジネスドメインの専門家ではないよね?
たとえば高度な会計処理のプログラミングをAIにしてもらうことって可能なのかな?

アプリケーションを完成させるにはプログラミングだけでなくビジネスドメインの知識も必要になると思うけど
717デフォルトの名無しさん (ワッチョイ 7956-s+rv)
垢版 |
2025/03/05(水) 19:44:29.61ID:LRhSWm980
たとえば高位の税理士や会計士がプログラミング専門に訓練したAIに指示を出すことで会計ソフトを作ることはできるのだろうか?
2025/03/05(水) 19:45:37.93ID:7KFkamxVd
AIについて語りたいならスレ違い。
2025/03/05(水) 19:51:32.43ID:+YosNdhq0
具体的な話はしないよ。
ChatGPT を試した程度で AI を評価すべきじゃないという主旨。
720デフォルトの名無しさん (ワッチョイ 7956-s+rv)
垢版 |
2025/03/05(水) 19:51:57.29ID:LRhSWm980
たとえば、はちみつ餃子さんはC++のこと詳しいけどどんなアプリでも作れるってわけじゃないよね?
医学とか専門性の高いものはその分野の知識も当然必要になってくると思うし

そうするとプログラミングの専門家AIってなんだ?
ほんとにプログラム作れるのか?という疑問が湧いてくる
721デフォルトの名無しさん (ワッチョイ fbef-qwdi)
垢版 |
2025/03/05(水) 23:39:44.64ID:+5QIrElo0
ハチミツさんはどんなプログラムでも作れるよ
時間さえあれば
2025/03/06(木) 00:09:24.53ID:r/i65GRXM
ところで、「結局C++とRustってどっちが良いの?」でも質問したんだけど、
X(旧 twitter)で、C++ というキーワードが検索できないんだけど、
俺の環境だけなのか、一般的に他の人の環境でもそうなって
いるのかどっち?
723デフォルトの名無しさん (ワッチョイ 0916-VeWP)
垢版 |
2025/03/06(木) 07:44:57.51ID:87cY651N0
unsigned intをkeyとするstd::mapである値以上ある値以下のkeyの要素を全て削除したいんだけどどうしたらいいかな?
2025/03/06(木) 09:03:07.49ID:jh2IMGBN0
>>723
std::erase_if
2025/03/06(木) 18:24:33.81ID:lbAGNheW0
>>722
記号を含むワードは検索できない。
投稿する側が配慮して #cpp や #cplusplus といったタグをつける習慣はあるけどそれほど浸透してないので網羅的に探す方法はないと思う。
普通のワードでも検索はなんかおかしいし。
おすすめが賢いようなのでフォローやお気に入りを積極的にしていくと快適に情報を集められるかもしれない。
昔はおすすめ機能に「いらんことするな」という意見が多かったけど思ったより良くできてるね。
2025/03/06(木) 19:34:30.93ID:e0LjRkKt0
最近Rustに押されてるのは検索性の悪さと無関係じゃないと思う
2025/03/06(木) 19:58:40.82ID:jh2IMGBN0
Go とか BASIC とか Scheme なんかも日常的な語彙すぎて検索性は悪いが、検索自体が出来ないってことはないから組み合わせるワード次第でなんとかなるもんな。
日本語の文章という制約を入れればそれなりに絞れるし。
728青木康善 (ワッチョイ 694e-rQ/Z)
垢版 |
2025/03/07(金) 14:22:29.06ID:ANm5ssXN0
皆さん、アドバイス大感謝します。しかし、Javaはある程度分かるんですが、C++はなかなか手古摺ります。
729デフォルトの名無しさん (アウアウウー Sa1d-8P30)
垢版 |
2025/03/07(金) 14:57:48.23ID:xU3go4h6a
そもそもtwitterを検索に使おうって言う発想が貧困アタオカ
2025/03/07(金) 19:27:12.87ID:AEV18jyF0
通常のwebより、SNSのほうが新鮮でおいしいって若者は思ったりするらしいんだが

それなら5chもいいぞ、名無しでいけるだけあって、愚問こいちゃっても後腐れは少ない
2025/03/07(金) 20:36:20.40ID:49H/kgbx0
>>729
そうやって解決策を示さずに初心者を排除していると老害と言われるよ。
2025/03/08(土) 14:23:59.19ID:UEd3TNkS0
自分が初心者だった頃を思い出せば
新参者に優しくなれるだろ?
2025/03/09(日) 20:55:57.38ID:kn1fZdL+0
初心者だった頃は、好き放題にぶっ叩かれてたな

同じようにするまいとは思うものの、他人を制止するのは(ry
2025/03/09(日) 21:48:59.36ID:ce6tc1GUa
初心者だったころはそもそもSNSもインターネッツもなくパソコン通信の黎明期で
周囲には俺以外C言語でプログラムしようという人間もいなかったから気楽だった
2025/03/13(木) 18:20:47.77ID:0zFelsYRp
十年くらいC++触ってなくて、最近また触る機会があったんだが
なんだこの[]()ってのは…ラムダ式なんて初めて見たよ
2025/03/13(木) 19:23:59.55ID:UZM60pXP0
そういう古参さんは、頭に+つけるってのを聞くとちょっと喜ぶと思うw
2025/03/13(木) 19:42:32.11ID:FfpB+bg40
>>735
十年前にはもうあったよ!
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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