!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を3行貼り付けること
次スレは>>980が立てること
無理なら細かく安価指定
※前スレ
C++相談室 part163
https://mevius.5ch.net/test/read.cgi/tech/1672409791/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
C++相談室 part164
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-QP0H)
2023/05/09(火) 11:50:52.06ID:EYc2I7oW082デフォルトの名無しさん (スププ Sdea-3V1s)
2023/05/22(月) 11:38:14.26ID:da9WNPSud do{}while(ここにblock内で宣言した変数使えるのマダ?);
83デフォルトの名無しさん (ラクッペペ MM86-F7IQ)
2023/05/23(火) 08:13:25.35ID:Zuh94crlM Main でインスタンス化した、ファイル操作
クラスの設定を、別のクラスutilityの
インスタンスで使いたい時ってどうしたら
いいですか?
ファイル開いておいて、デバッグ内容を
そこに書き込みたい。
デバッグ終わったら不要になるんで、
あまりincludeとか変数とか増やしたくない。
VC++ のwindowsディスクトップアプリ です。
クラスの設定を、別のクラスutilityの
インスタンスで使いたい時ってどうしたら
いいですか?
ファイル開いておいて、デバッグ内容を
そこに書き込みたい。
デバッグ終わったら不要になるんで、
あまりincludeとか変数とか増やしたくない。
VC++ のwindowsディスクトップアプリ です。
84デフォルトの名無しさん (スップ Sd8a-Cz+X)
2023/05/23(火) 08:33:03.17ID:2zdXEqSEd 「ファイル操作クラス」ってなんのことか読み取れんが
std::osteamのことか?std::ostreamを持ってる別の仕事があるクラスか?
差し支えなければ現状のクラス定義を貼ってほしいが
std::osteamのことか?std::ostreamを持ってる別の仕事があるクラスか?
差し支えなければ現状のクラス定義を貼ってほしいが
85デフォルトの名無しさん (ラクッペペ MM86-F7IQ)
2023/05/23(火) 09:15:28.22ID:Zuh94crlM >>84
ファイル操作を含んだ、デバッグ用に用意した
クラスです。Debugクラスとします。
Debug dbg; グローバルで‥
WWinMain(){
dbg.initial(); 色んな初期設定。
dbg.filename(debugfile) ;
dbg.start(); ここで、std::ofstrm file.openしてる
dbg.writefile(“なんかかきこむ”);
Utilty utl;
dbg.closefile();
}
Class Utility{
この中で、mainの中で色々設定した内容で
(mainで用意したdbgインスタンスのまま。)
Debugクラス。使いたい。
開いたFileそのまま。。
}
こんな感じですが、伝わりますか?
ファイル操作を含んだ、デバッグ用に用意した
クラスです。Debugクラスとします。
Debug dbg; グローバルで‥
WWinMain(){
dbg.initial(); 色んな初期設定。
dbg.filename(debugfile) ;
dbg.start(); ここで、std::ofstrm file.openしてる
dbg.writefile(“なんかかきこむ”);
Utilty utl;
dbg.closefile();
}
Class Utility{
この中で、mainの中で色々設定した内容で
(mainで用意したdbgインスタンスのまま。)
Debugクラス。使いたい。
開いたFileそのまま。。
}
こんな感じですが、伝わりますか?
86デフォルトの名無しさん (アウアウウー Sa2f-SwK+)
2023/05/23(火) 10:39:56.04ID:X1m2WkvHa Utility util(dbg);
87デフォルトの名無しさん (ワッチョイ defb-a+t/)
2023/05/23(火) 12:30:30.59ID:gLCisDzi0 関数の命名センスが短絡的やな
扇子を磨け
扇子を磨け
88デフォルトの名無しさん (スップ Sd8a-Cz+X)
2023/05/23(火) 12:40:55.81ID:2zdXEqSEd std::ostreamはコピーを禁止してるから参照渡し(or ポインタ渡し)で受け取るのがいいかな
class Utility{
Debug& _debug;
public:
Utility(Debug& debug) : _debug(debug) {}
void f(){
_debug.writefile(...);
}
};
int main(){
...
Utility utl(dbg);
}
class Utility{
Debug& _debug;
public:
Utility(Debug& debug) : _debug(debug) {}
void f(){
_debug.writefile(...);
}
};
int main(){
...
Utility utl(dbg);
}
89デフォルトの名無しさん (アウアウウー Sa2f-k5Su)
2023/05/23(火) 13:00:20.12ID:zQ9auONPa Debugをシングルトン化しておけばいいのでは。
そうすれば、utilityもMainもDebugの定義を読むだけで、お互いに無関心でいられる。
そうすれば、utilityもMainもDebugの定義を読むだけで、お互いに無関心でいられる。
90デフォルトの名無しさん (スップ Sdea-9ehv)
2023/05/23(火) 13:07:36.09ID:Gn7U56ehd staticおじさんになるんだよ
91デフォルトの名無しさん (ワッチョイ ffda-dfFb)
2023/05/23(火) 13:19:59.30ID:4jUsmOvf0 禁じ手
グローバルおじさん
グローバルおじさん
92デフォルトの名無しさん (ワッチョイ 635f-cbOI)
2023/05/23(火) 14:52:04.84ID:HWUzxVfV0 #ifdef NDEBUG
#define DEBUG_PUTLN(line)
#else
#define DEBUG_PUTLN(line) dbg.writefile(line)
#endif
#define DEBUG_PUTLN(line)
#else
#define DEBUG_PUTLN(line) dbg.writefile(line)
#endif
93デフォルトの名無しさん (ワッチョイ 5f7c-aV//)
2023/05/23(火) 20:11:47.19ID:QG1lXeie0 シングルトンって実質はグローバル変数そのものなんだけどな
94デフォルトの名無しさん (ワッチョイ dbd4-3DEL)
2023/05/23(火) 20:33:02.99ID:H3Kl0Etq0 クラス定義がそもそもグローバルだからな
95デフォルトの名無しさん (ワッチョイ ffda-dfFb)
2023/05/23(火) 23:59:19.62ID:4jUsmOvf0 int i をグローバル変数にしてたおじさん居たな
理由聞いたら書くの面倒だからとか
理由聞いたら書くの面倒だからとか
96デフォルトの名無しさん (アウアウウー Sa2f-pkzb)
2023/05/24(水) 01:56:30.90ID:EzFDCa2Ya 全部シングルトンおじさんとglobalおじさんは一人でもいると周りがめっちゃ迷惑やな
97デフォルトの名無しさん (ワンミングク MM3a-F7IQ)
2023/05/24(水) 14:31:10.50ID:VF8oVK+zM ありがとう。
やっばり、Utility の中にも色々書く必要あり
ですね。
デバッグのためだけにUtility2 3 4全部直すのも
と思ってたけど、諦めて頑張ります。
やっばり、Utility の中にも色々書く必要あり
ですね。
デバッグのためだけにUtility2 3 4全部直すのも
と思ってたけど、諦めて頑張ります。
98デフォルトの名無しさん (ワンミングク MM3a-F7IQ)
2023/05/24(水) 14:34:53.03ID:VF8oVK+zM external でインスタンス渡して、
global.h さんだけincludeしてできないかなと、
甘く考えてた時もありました。
global.h さんだけincludeしてできないかなと、
甘く考えてた時もありました。
99デフォルトの名無しさん (ワッチョイ 0705-vBUL)
2023/05/24(水) 23:58:03.92ID:lCJuR93r0 世界で1つのint iをブンブン回してるのクソワロタ
100デフォルトの名無しさん (アウアウエー Sac2-cyLm)
2023/05/25(木) 00:06:30.18ID:1obgfOJTa ループ内でサブルーチンとか呼んだときどうするんだろう・・・
101デフォルトの名無しさん (ワッチョイ 1b02-XPFS)
2023/05/25(木) 00:18:52.33ID:8bGOXla20 std::u16string_view stringView (string);
stringView = {stringView.data () + 1, stringView.size () - 1};
これの2行目はどういう意味なんでしょうか?何かの文法のような気がするのですが、調べ切れていません・・・。
stringView = {stringView.data () + 1, stringView.size () - 1};
これの2行目はどういう意味なんでしょうか?何かの文法のような気がするのですが、調べ切れていません・・・。
102デフォルトの名無しさん (ワッチョイ aa28-ff77)
2023/05/25(木) 00:55:03.39ID:NKFrr9+j0 グローバルなオブジェクトのコンストラクタの中からprintf()とかのC言語の標準ライブラリ機能が呼べるのはワカルが
coutとかのC++の標準ライブラリ機能は安全に呼べることは保証されるの?
coutとかのC++の標準ライブラリ機能は安全に呼べることは保証されるの?
103デフォルトの名無しさん (ワッチョイ 5f7c-aV//)
2023/05/25(木) 01:41:17.05ID:WiPfB6bJ0 される
規格上はstdに含まれる値(オブジェクト)はユーザーコードで参照されたら(特別の規定がない限り)常に有効でなければならない
規格上はstdに含まれる値(オブジェクト)はユーザーコードで参照されたら(特別の規定がない限り)常に有効でなければならない
104デフォルトの名無しさん (ワッチョイ 4aa5-owa4)
2023/05/25(木) 08:37:46.24ID:2LyQ/gAw0 >>101
rangesのviewだろ
rangesのviewだろ
105はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cb3e-FIIW)
2023/05/25(木) 09:32:15.13ID:G3dlC7U30 >>101
> stringView = {stringView.data () + 1, stringView.size () - 1};
↑これは↓こう書いた場合と同じ。
stringView = std::u16string_view(stringView.data () + 1, stringView.size () - 1);
> stringView = {stringView.data () + 1, stringView.size () - 1};
↑これは↓こう書いた場合と同じ。
stringView = std::u16string_view(stringView.data () + 1, stringView.size () - 1);
106デフォルトの名無しさん (スップ Sdea-9ehv)
2023/05/25(木) 11:13:48.89ID:vvIauVZOd >>105
一見意味不明何だけど何て記法?
一見意味不明何だけど何て記法?
107デフォルトの名無しさん (ワッチョイ 0705-vBUL)
2023/05/25(木) 11:49:30.93ID:tfjCiJA40 勉強中なんだけど、クラスの相互参照って気持ち悪い
108デフォルトの名無しさん (ワッチョイ 0705-vBUL)
2023/05/25(木) 12:04:14.41ID:tfjCiJA40 もう、慣れた
109はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cb3e-FIIW)
2023/05/25(木) 12:08:58.16ID:G3dlC7U30 >>106
たぶん直接的に表す用語は定義されてないと思う。
型の情報がないときは波括弧で表されたリストは initializer_list に推論されるけど
代入のときは代入演算子のオーバーロード解決時候補に関数シグネチャとして T& operator=(T&,T); が加わるので
結果としてこのとき生成される一時オブジェクトの初期化子という解釈になる。
たぶん直接的に表す用語は定義されてないと思う。
型の情報がないときは波括弧で表されたリストは initializer_list に推論されるけど
代入のときは代入演算子のオーバーロード解決時候補に関数シグネチャとして T& operator=(T&,T); が加わるので
結果としてこのとき生成される一時オブジェクトの初期化子という解釈になる。
110デフォルトの名無しさん (ブーイモ MMea-UgiX)
2023/05/25(木) 13:19:23.21ID:E3OVdEtKM Uniform initialization 一様初期化とか統一初期化?
https://cpprefjp.github.io/lang/cpp11/uniform_initialization.html
std::initializer_listも含んだ文法だね
std::initializer_listの方か他のコンストラクタの方になるかはけっこうルールがややこし
https://cpprefjp.github.io/lang/cpp11/uniform_initialization.html
std::initializer_listも含んだ文法だね
std::initializer_listの方か他のコンストラクタの方になるかはけっこうルールがややこし
111デフォルトの名無しさん (オイコラミネオ MMeb-owa4)
2023/05/25(木) 19:45:10.69ID:bX845kvIM c++はその{}の中に書くとclassの中に書いた変数が順番に初期化される
いろいろ問題があるから他の言語で採用されていない
c++は実用面で利点があると判断されたのかそのまんま
いろいろ問題があるから他の言語で採用されていない
c++は実用面で利点があると判断されたのかそのまんま
112デフォルトの名無しさん (オイコラミネオ MMeb-owa4)
2023/05/25(木) 19:47:55.97ID:bX845kvIM113デフォルトの名無しさん (ワッチョイ 1b02-XPFS)
2023/05/26(金) 06:48:21.55ID:kRDoXd150 >>105
ありがとうございます。
DTMのプラグイン(VST3)を作ってみたくて、それにはC++をある程度分かってないといけないそうなので、
参考書読んだりしているのですが、これれまでC++に全く触れてこなかったので、かなり面食らってます・・・。
サンプルのソースを見ても、いろいろな応用が含まれていて、前提となる知識がそれなりにないと分からないのかなと・・・。
ありがとうございます。
DTMのプラグイン(VST3)を作ってみたくて、それにはC++をある程度分かってないといけないそうなので、
参考書読んだりしているのですが、これれまでC++に全く触れてこなかったので、かなり面食らってます・・・。
サンプルのソースを見ても、いろいろな応用が含まれていて、前提となる知識がそれなりにないと分からないのかなと・・・。
114はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cb3e-FIIW)
2023/05/26(金) 10:03:10.85ID:qewSmBpu0 >>113
C++ の仕様には未定義がたくさんあるので実際に動作させた結果から学ぶべきではないという事情がある。
ある程度は理屈で理解しておかないと簡単に破綻するよ。
実例を見ながら雰囲気で使うってのは出来ない言語だと思う。
C++ の仕様には未定義がたくさんあるので実際に動作させた結果から学ぶべきではないという事情がある。
ある程度は理屈で理解しておかないと簡単に破綻するよ。
実例を見ながら雰囲気で使うってのは出来ない言語だと思う。
115デフォルトの名無しさん (ワッチョイ 67c9-HmrL)
2023/05/26(金) 10:55:39.45ID:Yaiov3bU0 しらない間に未定義踏んでて、コンパイラ変わったりしたときに挙動が変わるやつ
116デフォルトの名無しさん (ササクッテロラ Sp03-OHH9)
2023/05/26(金) 11:28:17.59ID:VVS6yE6rp >ある程度は理屈で理解しておかないと
に対しての
>実際に動作させた結果から学ぶべきではない
極端じゃね?
に対しての
>実際に動作させた結果から学ぶべきではない
極端じゃね?
117デフォルトの名無しさん (ワッチョイ 5f9c-uVPi)
2023/05/26(金) 11:37:41.87ID:jtoHc2Cr0 >>113
chatgptにサンプルコードを解説させたら?
chatgptにサンプルコードを解説させたら?
118はちみつ餃子 ◆8X2XSCHEME (ワッチョイ cb3e-FIIW)
2023/05/26(金) 13:02:36.82ID:qewSmBpu0 >>116
「ちゃんとした資料を読まずに動作から何かを読み取ろうとするな」という話なので、
資料を読んだうえで手を動かして確認することまで否定してるわけじゃないよ。
少なくとも初手は入門書くらい読まんといかんという程度のことを言ってる。
「ちゃんとした資料を読まずに動作から何かを読み取ろうとするな」という話なので、
資料を読んだうえで手を動かして確認することまで否定してるわけじゃないよ。
少なくとも初手は入門書くらい読まんといかんという程度のことを言ってる。
119デフォルトの名無しさん (スッップ Sdea-Q5bc)
2023/05/26(金) 21:10:27.73ID:u5i01UPgd 解脱させたらに見えたし
120デフォルトの名無しさん (ワッチョイ 5f7c-aV//)
2023/05/26(金) 21:19:24.77ID:cuJor+ml0 「ワイのコードではこう動いてるからいいの!」「ワイが試したらこう動いたからこうなの!」
で突っ走った結果大爆発する事例が後を絶たない
で突っ走った結果大爆発する事例が後を絶たない
121デフォルトの名無しさん (スプッッ Sd13-Cz+X)
2023/05/26(金) 21:27:57.62ID:TE50P/kBd 未定義まで行かなくても処理系依存とか未規定動作もあるからほんとにややこしい
知らず知らずのうちにコンパイラの拡張機能使ってたりもあるし
「動けばいいんだよ!」としか考えてないとどこで足元掬われるかわからん
知らず知らずのうちにコンパイラの拡張機能使ってたりもあるし
「動けばいいんだよ!」としか考えてないとどこで足元掬われるかわからん
122デフォルトの名無しさん (アウアウウー Sa2f-+waq)
2023/05/26(金) 22:54:23.75ID:C+URTl/Qa んちんちんちんちんちんち
123デフォルトの名無しさん (ワッチョイ cb01-OHH9)
2023/05/26(金) 23:25:57.70ID:Rw5xxtFh0 >>120-121
そんな低レベルな奴見たことないけどな
居るには居るんだろうけど
あと逆にそういうのを「手を動かさない」「実用コードで試しもせずに机上の空論でマウント取る」ことの言い訳にしてる奴を最近よく見かけるのでな
そんな低レベルな奴見たことないけどな
居るには居るんだろうけど
あと逆にそういうのを「手を動かさない」「実用コードで試しもせずに机上の空論でマウント取る」ことの言い訳にしてる奴を最近よく見かけるのでな
124デフォルトの名無しさん (オイコラミネオ MMeb-owa4)
2023/05/26(金) 23:42:19.49ID:mzi7SNrwM 実際VS2005ぐらいに演算の順番が決まってなくて実装依存だった
それでコードを書いてた
それがVS2007には演算順序が2005と変わってた
GCCでも別の順で計算された
どうしたらいいかわからんから多分ここに聞きにきたら未定義動作だからどうしようもない
実装依存で仕方がないと返答あり
それでコードを書いてた
それがVS2007には演算順序が2005と変わってた
GCCでも別の順で計算された
どうしたらいいかわからんから多分ここに聞きにきたら未定義動作だからどうしようもない
実装依存で仕方がないと返答あり
125デフォルトの名無しさん (ワッチョイ 4b01-nxBO)
2023/05/27(土) 00:10:57.47ID:U8Vd2x100 自分もVCから別環境のclangに数万行のコード移したら未定義踏んでた部分あるけど、試さずにそれを最初から予知出来てたかというと無理がある
どちらかのコンパイラのバグで通らなかったりおかしな動作する場合もあるんだし(特にテンプレート周りは多い)
書いてる最中でも疑問に思ったらすぐ調べる癖がついてりゃいいんじゃないかな
どちらかのコンパイラのバグで通らなかったりおかしな動作する場合もあるんだし(特にテンプレート周りは多い)
書いてる最中でも疑問に思ったらすぐ調べる癖がついてりゃいいんじゃないかな
126デフォルトの名無しさん (ワッチョイ 6b5f-S+HU)
2023/05/27(土) 00:12:11.79ID:ne0x12BC0 >>124 いや、文を分けて順序付けするなり、やりようはあっただろ。
127デフォルトの名無しさん (オイコラミネオ MM4f-/RYi)
2023/05/27(土) 00:24:40.55ID:bsq21T/IM >>126
上にも書かれてるけど既存のコードのどこで問題が発生してるか全てを特定できないんだよ
上にも書かれてるけど既存のコードのどこで問題が発生してるか全てを特定できないんだよ
128蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdbf-JQ4Y)
2023/05/27(土) 00:41:28.44ID:LEdjjvJrd 最近のVisual C++なら「コード分析」機能でコードの改良点を教えてくれるかも知れない。
129デフォルトの名無しさん (ワッチョイ 3bda-DntA)
2023/05/27(土) 00:45:08.14ID:JrAUAXG20 AIが他人が書いたクソコードのリファクタリングやってくれると助かるな
130デフォルトの名無しさん (アウアウウー Sa8f-BLq/)
2023/05/27(土) 01:23:22.98ID:D5N3c6HOa 超すごい!人間を越えた!とかワイワイさわがしいAIだが
実際にそういう感じの「マジに困ってる、やってくれたら本気で助かる」
ような事案は結局できない、という地獄
実際にそういう感じの「マジに困ってる、やってくれたら本気で助かる」
ような事案は結局できない、という地獄
131デフォルトの名無しさん (ワッチョイ 0bb5-jMfM)
2023/05/27(土) 04:58:22.78ID:wRHxWgs90 言われたとおりやるだけ、なやつの極端な例だからな
132デフォルトの名無しさん (ワッチョイ 3bf0-TYVD)
2023/05/27(土) 08:03:41.82ID:hUTpNjv00 AIが人間並みの知性を持てば人間並みにエンバグしてくれるはず
133デフォルトの名無しさん (アウアウウー Sa8f-BLq/)
2023/05/27(土) 08:08:34.97ID:ap1zYrbma すごい!まさに人間そのもののAIじゃないか!
134デフォルトの名無しさん (ワッチョイ 6b5f-r/x3)
2023/05/29(月) 16:30:05.50ID:AteM0zCG0 責任転嫁するようになるまで人間に並んだとは認めない
135デフォルトの名無しさん (ワッチョイ 0b6e-jMfM)
2023/05/29(月) 17:54:13.71ID:I9NccWA+0 会社で嫌われるイヤな奴の特徴を全てプログラミングされたAIとか?
136デフォルトの名無しさん (ワッチョイ 4bc0-3xLk)
2023/05/29(月) 18:33:58.19ID:IrTtCTAo0 AIに相談したせいで鬱になって辞める社員が続出しそうだな
AIポイゾニングは新手のリモート攻撃として流行るかもね
AIポイゾニングは新手のリモート攻撃として流行るかもね
137デフォルトの名無しさん (ワッチョイ 0b6e-jMfM)
2023/05/29(月) 20:15:39.44ID:I9NccWA+0 ヘイテトリスみたいな社員AI
138デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/04(日) 08:29:54.68ID:5jvZ+YKl0 質問ですがstd::stringに格納された数値文字列を数値にしたい、
しかし数値以外の文字(ただし空白文字は認める)が後ろにくっついていたらエラーにしたい、と言う場合どうす
れば良いの?
ダチャい書き方ならできうるけど人類はいつまでstrtod()や&(str[0])……
std::string str;
str ← なんか文字列入る
char* end;
double d = std::strtod(&(str[0]), &end);
if (end == &(str[0])) { エラー }
while (*end != '\0') {
if (!std::isspace(*end)) { エラー }
end++;
}
しかし数値以外の文字(ただし空白文字は認める)が後ろにくっついていたらエラーにしたい、と言う場合どうす
れば良いの?
ダチャい書き方ならできうるけど人類はいつまでstrtod()や&(str[0])……
std::string str;
str ← なんか文字列入る
char* end;
double d = std::strtod(&(str[0]), &end);
if (end == &(str[0])) { エラー }
while (*end != '\0') {
if (!std::isspace(*end)) { エラー }
end++;
}
139デフォルトの名無しさん (ワッチョイ 61f0-7HAn)
2023/06/04(日) 08:38:19.14ID:Wo5LOckB0140デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/04(日) 09:23:46.19ID:5jvZ+YKl0 誘導されたので誘導先に建てたはサーセン、
141デフォルトの名無しさん (オイコラミネオ MMe9-N/Lw)
2023/06/04(日) 11:01:36.99ID:/SPLhkOjM 文字列(char配列)とstringの仕組みはダサいけど他も大体これ
さらにspanもいれる
どこも大体同じ
さらにspanもいれる
どこも大体同じ
142デフォルトの名無しさん (ワッチョイ edf0-+LPJ)
2023/06/04(日) 18:06:29.89ID:HhL1J/ge0 しかしstodの「文字列が数値で始まる場合、数値化不可能な文字があっても例外は投げずに数値化出来るところまでの部分で数値化する」ってむしろ不便だよな。
143デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 18:43:24.19ID:XolxJINE0 charに変換して文字コード比較して範囲内外で変換分ける処理がシンプルじゃね
144デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 18:44:47.92ID:XolxJINE0 速度気になるなら二分探索の処理に追加してやればいいし
145デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 18:45:10.55ID:XolxJINE0 再帰処理でやってもいいかな
146デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 18:45:59.18ID:XolxJINE0 順序保証したいならリンクリストもありか
147デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 18:46:48.29ID:XolxJINE0 ちんこ痒い
148デフォルトの名無しさん (ワッチョイ a101-tVFH)
2023/06/04(日) 18:58:47.70ID:ym4W3arT0 リンクトリストな
149デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/04(日) 19:08:45.19ID:XolxJINE0 内挿探索でも良さそう
150デフォルトの名無しさん (ワッチョイ a236-OEcF)
2023/06/04(日) 20:01:40.57ID:0KyMklrL0 STLへの多重配列クラス追加まだ?
151はちみつ餃子 ◆8X2XSCHEME (ワッチョイ c23e-N/Lw)
2023/06/04(日) 22:37:10.94ID:MHoxWKtY0 >>142
トークナイズするときに便利。
文字列が数値表現だけになっている状態を扱うことってそんなになくない?
なんらかの文字列から取り出す操作になることは多いし、
それを前提として考えたら自然な設計だと思う。
トークナイズするときに便利。
文字列が数値表現だけになっている状態を扱うことってそんなになくない?
なんらかの文字列から取り出す操作になることは多いし、
それを前提として考えたら自然な設計だと思う。
152デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/04(日) 22:54:17.16ID:5jvZ+YKl0154デフォルトの名無しさん (ワッチョイ 8d7c-vcK2)
2023/06/04(日) 23:16:49.21ID:bxWaSYac0 仕様も確認できない奴が仕様に文句付けるとかお笑いだわ
155デフォルトの名無しさん (ワッチョイ b901-1DxI)
2023/06/04(日) 23:21:12.95ID:QWRuQk/m0 勉強になるなぁ
boost::lexical_cast
ばっか使ってきた
boost::lexical_cast
ばっか使ってきた
156デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/05(月) 01:56:30.15ID:yTJt/rkc0 >>154
仕様を確認して文句つけているのだから無問題
仕様を確認して文句つけているのだから無問題
157デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/05(月) 02:01:37.37ID:yTJt/rkc0 つか自分のスキルに合わせて仕様を変えてしまう香具師よりはマシ
158デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/05(月) 02:39:23.25ID:yTJt/rkc0 つか初心者スレで今教えてもらったわサーセン;;;
std::stod()の第2引数でどこまで読んだのかわかるのかそうか、、、
std::stod()の第2引数でどこまで読んだのかわかるのかそうか、、、
159デフォルトの名無しさん (アウアウウー Sac5-Rr/m)
2023/06/05(月) 09:40:21.73ID:ejs/048Ga 1e-3
0.4E+5
どうせ . とか + とか - とか e とか E が数字の後ろに来たらエラーにする糞オレオレ関数の出来上がり
0.4E+5
どうせ . とか + とか - とか e とか E が数字の後ろに来たらエラーにする糞オレオレ関数の出来上がり
160デフォルトの名無しさん (アウアウウー Sac5-+LPJ)
2023/06/05(月) 18:46:42.35ID:QlKvcf+ua fortran爺が1e-3を1-3と書いて送ってくるの辛い
161デフォルトの名無しさん (ワッチョイ 0128-w4Nq)
2023/06/05(月) 22:24:29.81ID:yTJt/rkc0 charやwchar_tのうちは文字数くれたら別段間違うことは無いはず……
162デフォルトの名無しさん (ワッチョイ 916e-UlWg)
2023/06/06(火) 05:24:35.89ID:sRXlIYgz0 0xe5a3ec05p-10
163デフォルトの名無しさん (ラクッペペ MMe6-aBKW)
2023/06/07(水) 18:16:46.44ID:yJ6NJbScM regex 使って、全角半角タブはreplace
しつつも、正規表現で、数字だけ残して
ってしたらいいのでは
しつつも、正規表現で、数字だけ残して
ってしたらいいのでは
164デフォルトの名無しさん (ワッチョイ 7d02-lxw5)
2023/06/07(水) 19:51:43.45ID:Y1IkEaDo0 ファイル名で並び替えるとき数字を文字列じゃなく数として判断して並び替えるの便利だよね。StrCmpLogicalWみたいなの
165デフォルトの名無しさん (ワッチョイ eefb-dBHf)
2023/06/07(水) 20:17:49.58ID:Wtu+kJ5G0 digitntegerみたいな関数なかったっけ
javaと混同してるかもしれん
javaと混同してるかもしれん
166デフォルトの名無しさん (ワッチョイ eed6-hc5i)
2023/06/07(水) 20:48:56.87ID:DVJV7mYE0 大文字小文字とか小数とか半角全角とか漢数字とかあるから闇が深い
167デフォルトの名無しさん (ワッチョイ e54e-sceX)
2023/06/07(水) 21:25:16.49ID:nzVrXgF60 アンダーバーの位置関係も結構罠だよね
文字コード的には 大文字<アンダーバー<小文字 だから
文字コード的には 大文字<アンダーバー<小文字 だから
168デフォルトの名無しさん (オイコラミネオ MMe9-sceX)
2023/06/07(水) 23:13:43.57ID:ZHL7BfYmM 言語+コンパイラの仕様が拡張してるのにライブラリは貧弱なまま
自己流に実装してしょうもないバグが紛れ込む
関係ないけどstd::stodはC言語版と微妙に仕様が違うのだろうけどそんなの調べてない
自己流に実装してしょうもないバグが紛れ込む
関係ないけどstd::stodはC言語版と微妙に仕様が違うのだろうけどそんなの調べてない
169デフォルトの名無しさん (ワッチョイ 469a-D/IE)
2023/06/08(木) 00:14:20.61ID:mm4FKY9+0 例えばstodが解釈できる数値表現を正規表現でも解釈したいと思ったらどうしたら
170デフォルトの名無しさん (アウアウウー Sac5-tVFH)
2023/06/08(木) 11:09:51.53ID:rxjbLVG0a 仕様の不備は運用でカバー
171デフォルトの名無しさん (ワッチョイ b901-1DxI)
2023/06/09(金) 00:34:29.94ID:Y9bb1A2p0 std::sort (std::execution::par, v.begin(), v.end());
上記で並列ソートできるとのことですが何並列なんでしょうか?
もし環境に合わせて良きに計らってくれるのなら
その良き並列数を取得する関数などありますか?
上記で並列ソートできるとのことですが何並列なんでしょうか?
もし環境に合わせて良きに計らってくれるのなら
その良き並列数を取得する関数などありますか?
172はちみつ餃子 ◆8X2XSCHEME (ワッチョイ e53e-N/Lw)
2023/06/09(金) 01:32:53.73ID:vjFKJkM00 >>171
詳細は言語仕様では規定されていない。
リソースが不足していれば並列化されないこともあり得る。
並列化は大抵の場合に OS のサポートが必要だし
どういうサポートがあるかわからんので言語として明瞭な規定を決められない。
並列化される保証はないのにデータ競合が発生しないように実装するのは
プログラマの責任なので若干の理不尽さを感じなくもないが
C++ ってのはそういうもんなので……。
詳細は言語仕様では規定されていない。
リソースが不足していれば並列化されないこともあり得る。
並列化は大抵の場合に OS のサポートが必要だし
どういうサポートがあるかわからんので言語として明瞭な規定を決められない。
並列化される保証はないのにデータ競合が発生しないように実装するのは
プログラマの責任なので若干の理不尽さを感じなくもないが
C++ ってのはそういうもんなので……。
173デフォルトの名無しさん (ワッチョイ 6293-1rII)
2023/06/09(金) 07:16:14.12ID:bBOCrSG+0 週末のレイトレーシングで1-17あたりをマルチスレッドにしてみたんだけど、ubuntu上でg++やインテルコンパイラだとスレッド数を増やすと逆におそくなるんです。windows上でvisualstudioでコンパイルすると、望み通りスレッド数を増やすほど速くなりました。何でなんでしょう?
174デフォルトの名無しさん (ワッチョイ eef2-2RXP)
2023/06/09(金) 08:07:59.94ID:e2G6/2re0175デフォルトの名無しさん (ワッチョイ 916e-aXLw)
2023/06/09(金) 08:18:32.57ID:m5f79nsG0 gccはね・・・どうも平行/並列処理には本気じゃないところがある
たとえばstd::execution::parなんか真面目にやらんかこらって言いたくなる
たとえばstd::execution::parなんか真面目にやらんかこらって言いたくなる
176デフォルトの名無しさん (ワッチョイ 916e-aXLw)
2023/06/09(金) 08:19:05.88ID:m5f79nsG0 無料なので強く出られないけどね
177デフォルトの名無しさん (ワッチョイ b901-1DxI)
2023/06/09(金) 11:49:37.37ID:Y9bb1A2p0 皆さんレスを有り難うござます
うちはstd::execution::parで効果絶大です
$ g++ --version
g++ (Debian 10.2.1-6) 10.2.1 20210110
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
うちはstd::execution::parで効果絶大です
$ g++ --version
g++ (Debian 10.2.1-6) 10.2.1 20210110
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
178デフォルトの名無しさん (ワッチョイ b901-mwg1)
2023/06/09(金) 22:45:32.96ID:uysUozYZ0 なるほどなあ
179デフォルトの名無しさん (ワッチョイ 13ad-2rqm)
2023/06/10(土) 02:07:59.33ID:oiDhCbH60 EASTLが久しぶりにバージョンアップしたね
180デフォルトの名無しさん (ワッチョイ c901-7YjN)
2023/06/10(土) 07:02:46.03ID:kaZ6v5kb0 ほう!いいね
181デフォルトの名無しさん (ワッチョイ b16b-q0yD)
2023/06/14(水) 07:54:14.73ID:/jeWb7sY0 time コマンドで調べたメモリの使用量 (max resident set size) が理論値よりも多くて、原因を特定するためにコード内の各箇所でその時点でのメモリ使用量を出力できたら良いなと思います。
実行環境は Linux なのですが、どのようにするべきでしょうか?
実行環境は Linux なのですが、どのようにするべきでしょうか?
182デフォルトの名無しさん (ワッチョイ b16b-q0yD)
2023/06/14(水) 08:43:22.06ID:/jeWb7sY0 あとメモリに関連した質問で、例えばめちゃデカい std::vector を要素数 1 に resize しても capacity はめちゃデカいままですよね?
STL コンテナ以外にも、大きいメモリが割り当てられてるオブジェクトを使用後に破棄したいというケースがよくあります。
最も簡単なやり方は関数とか局所的なスコープとして切り出すことかと思いますが、他に、オブジェクトに割り当てられているメモリを手動で解放する方法があったら教えてください。
STL コンテナ以外にも、大きいメモリが割り当てられてるオブジェクトを使用後に破棄したいというケースがよくあります。
最も簡単なやり方は関数とか局所的なスコープとして切り出すことかと思いますが、他に、オブジェクトに割り当てられているメモリを手動で解放する方法があったら教えてください。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏「この喧嘩は日本の完敗」 台湾有事答弁めぐる外務省局長訪中で指摘「中国に怒られてご説明に伺った日本と見られる」 [muffin★]
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★10 [ぐれ★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- おっぱい! おっぱい! おっぱい! おっぱい! おっぱい! おっぱい! おっぱい! おっぱい!
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 高市コイン、155円突破wwwwwwwwww [246620176]
- サナエがトランプのチンポしゃぶったら日本は安泰
- おじゃる丸をまったり待機するスレ🏡
- もしかして安倍晋三て有能だった?ネトウヨを掌握しつつ韓国、中国、ロシアへの売国をバレないようにやってたし [472617201]
