-
[解決済み] std::atomicのロックはどこにありますか?
質問 データ構造に複数の要素がある場合、そのアトミックなバージョンは (常に) ロックフリーであることはできません。 これは、CPU が何らかのロックを使用せずにデータをアトミックに変更できないため、より大きな型に当てはまると聞きました。 たとえば #include <iostream> #include <atomic> struct foo {
2023-08-26 10:35:01 -
ロングダブル vs ダブル
質問 様々なデータ型のサイズが、使用するシステムによって変わることがあることは知っています。 私はXP 32bitsを使用しており、その中で sizeof() 演算子を C++ で使用すると、どうやら long double は12バイト、そして double は8バイトです。 しかし、ほとんどの主要なソースでは long double は 8 バイトであり、したがっ
2023-08-25 22:40:31 -
[解決済み] c++のインライン関数?
質問 なぜこのようなことをしなければならないのでしょうか。 inline double square (double x) { return x*x;} の代わりに double square (double x) { return x*x;} 違いはあるのでしょうか? どのように解決するのですか? 前者( inline を使用)により、その関数をヘッダーファイル
2023-08-25 09:51:49 -
ヒープメモリの使用(malloc/new)は非決定論的なプログラムを作るか?
質問 数ヶ月前から宇宙用のC言語でリアルタイムシステム用のソフトウェアを開発したり、C++でマイコン用のソフトウェアを開発したりしています。このようなシステムには経験則として ヒープオブジェクトを作るべきではない (だから malloc/new はダメ) という経験則があります。 非決定論的 . と言われても、その正しさを検証することはできませんでした。そこで これは正しい
2023-08-25 03:41:43 -
Cプリプロセッサーでファイルが存在するかどうかを知ることはできますか?
質問 私は非常に大きなコードベース (数千のモジュール) を持っています。そのコードは、すべて異なるオペレーティング システムと異なる C++ コンパイラで実行される多数のプロジェクトで共有されています。言うまでもなく、ビルド プロセスを維持することは非常に面倒です。 コードベースには、プリプロセッサが特定の #includes を無視させる方法があれば、コードを大幅にきれいにするこ
2023-08-24 23:06:08 -
consteval関数は、関数の引数に依存するテンプレートパラメータを許容するか?
質問 C++17では、このコードは不正です。 constexpr int foo(int i) { return std::integral_constant<int, i>::value; } というのも、たとえ foo がコンパイル時に評価できたとしても、コンパイラは実行時にそれを実行するための命令を生成する必要があるため、テンプレートのインスタンス化が不
2023-08-24 13:54:48 -
C++でenumを拡張する?
質問 C++で列挙型を拡張/"継承"する方法はありますか? I.E: enum Enum {A,B,C}; enum EnumEx : public Enum {D,E,F}; あるいは、少なくともそれらの間の変換を定義するか? どのように解決するのですか? いいえ、ありません。 enum は、C++では本当にかわいそうなことで、もちろんそれは残念なことです。
2023-08-24 12:57:18 -
pass-by-valueとthen-moveの構成は悪いイディオムなのか?
質問 C++ではmoveセマンティクスがあるため、最近では void set_a(A a) { _a = std::move(a); } その理由は、もし a が rvalue である場合、コピーは消去され、移動は 1 回だけとなるからです。 しかし、もし a が lvalue の場合はどうなるのでしょうか?コピー構築と移動代入が行われるようです(A に適切な移動代入演算
2023-08-24 11:19:40 -
なぜstd::strstreamは非推奨になったのですか?
疑問点 最近、私は std::strstream は非推奨となり、代わりに std::stringstream . しばらく使っていなかったのですが、当時は必要なことをやってくれていたので、非推奨と聞いて驚きました。 私の質問は、なぜこのような決定がなされたのか、また、この決定によって std::stringstream にはない利点があるのでしょうか? std::strst
2023-08-24 11:07:34 -
C言語での.hファイルの異常な使用について
質問 フィルタリングに関する記事を読んでいて、いくつかの奇妙な使い方を発見しました。 .h ファイル - 係数の配列を埋めるためにそれを使用します。 #define N 100 // filter order float h[N] = { #include "f1.h" }; //insert coefficients of filter float x[N]; float y[N];
2023-08-24 01:27:43 -
オブジェクトを再初期化するためのコンストラクタの呼び出し
質問 コンストラクタを使用してクラスのオブジェクトを再初期化することは可能でしょうか? どのように解決するのですか? 一応。クラスAが与えられると A a; ... a = A(); 最後の文は初期化ではなく、代入ですが、おそらくあなたが望むことを行っています。
2023-08-23 07:53:43 -
エスケープシーケンス'˶'ᵕ'˶'の使い方は?
質問 以下のようなC言語のコードがあります。 #include<stdio.h> int main() { printf("Hey this is my first hello world \r"); return 0; } を使用しました。 \r というエスケープシーケンスを使って実験してみました。このコードを実行すると、次のような出力が得られます。
2023-08-22 02:03:54 -
スタックレスコルーチンとスタックフルコルーチンはどう違うのですか?
質問 背景は? 私は現在、多数 (数百から数千) のスレッドを持つアプリケーションを持っているので、これを尋ねています。これらのスレッドのほとんどは、キューに入れられるワーク アイテムを待っている間、非常に多くの時間アイドル状態です。ワークアイテムが利用可能になると、任意に複雑な既存のコードを呼び出して処理されます。オペレーティング システムの構成によっては、アプリケーションはユーザ
2023-08-21 17:45:57 -
[解決済み] なぜこれがコンパイルされるのか理解できない
質問 私は確かに何かを見逃しているが、私はこれがなぜコンパイルされるのか理解できない(g++ & clang++の両方と)。 struct A { }; struct B { }; int main() { A a(B); } まず最初に B は型です...値ではありません。このコードをどう解釈すればいいのでしょうか? どのように解決するのですか? という名
2023-08-20 03:03:37 -
C++の名前空間に関するアドバイス
質問 私はちょうど C++ の名前空間を独学しているところです (C# のバックグラウンドから来ました)。そして、C++ が他のほとんどの言語よりも優れているすべての事柄について、入れ子の名前空間はそれらのうちの 1 つではない、と本当に思い始めています! ネストされた名前空間を宣言するために、次のことをしなければならないと考えていて正しいでしょうか。 namespace tier1
2023-08-19 19:35:15 -
unique_ptrを代入するべきか、リセットするべきか?
質問 所有するオブジェクトの寿命がその所有者にリンクされているという一般的な状況を考えると、私は2つの方法のうちの1つをユニークポインタとして使用することができます . 割り当てることができます。 class owner { std::unique_ptr<someObject> owned; public: owner() {
2023-08-19 13:23:48 -
Visual C++でインポートライブラリ(.lib)とDLLの両方をビルドするには?
質問 DLL ファイルとインポートライブラリ (.lib) ファイルをビルドする単一の Visual Studio プロジェクトを持ちたいと考えています。 (インポートライブラリとは、それを使用する他のプロジェクトでその DLL ファイルをロードする世話をする静的リンクされたライブラリのことです)。 そこで、Visual Studio C++ 2008 Express Edition で
2023-08-19 09:01:54 -
1次元配列と2次元配列、どっちが速い?
質問 2次元のフィールド(軸x、y)を表現する必要があるのですが、1次元配列と2次元配列のどちらを使うべきかという問題に直面しています。 1次元配列(y + x*n)のインデックスを再計算することは、2次元配列(x、y)を使用するよりも遅くなる可能性があることは想像できますが、1次元はCPUキャッシュになる可能性があることは想像できます...。 いくつかググってみましたが、静的配列に
2023-08-18 17:10:47 -
[解決済み] dynamic_castを使おうとすると「source type is not polymorphic」と表示される。
質問 struct A {}; struct B : A {}; int main() { A* a = new B(); B* b = dynamic_cast<B*>(a); } を与える。 cannot dynamic_cast 'a' (of type 'struct A*') to type 'struct B*' (source ty
2023-08-18 12:07:22 -
CとC++ : 自動構造体の部分的な初期化
質問 例えば somestruct が3つの整数メンバを持つ場合、私はずっとC(またはC++)の関数でこれをやってもいいと思っていました。 somestruct s = {123,}; 最初のメンバーは123に、最後の2つは0に初期化されます。 私はよく自動配列で同じことをして、次のように書きます。 int arr[100] = {0,}; と書いて、配列内のすべての整数が0に
2023-08-17 16:34:57
最新
-
LinuxでインターフェースのIPアドレスを取得する
-
WPFでリソースであるアイコンを使用するにはどうすればよいですか?
-
Laravel 6.0での「未定義関数str_slug()の呼び出し」について
-
WildFlyのヒープメモリを増やすには?
-
MessageBox.Showダイアログの「はい」「いいえ」ボタンのテキストを変更するには?
-
FlutterでキーボードのText Input Action Button(return/enterキー)を変更するには?
-
同一線上にある2つのdivブロック
-
ナビゲーションバーの右側に複数のUIBarButtonItemを追加するには?
-
絶対配置を使用することはバッドプラクティスとみなされますか?[クローズド]
-
リアクト転写小道具(1個を除く
おすすめ
-
Eclipse で Maven プロジェクトを作成すると、「Could not resolve archetype」というクレームが発生する [重複] 。
-
ドロップダウンリストのselecteditemをプログラムで設定する
-
切り上げ/切り下げ 瞬間を分単位で表す
-
kubernetesを完全にアンインストールする方法
-
Laravelが更新後に「The bootstrap/cache directory must be present and writable」エラーを投げる。
-
LinearLayoutに子要素がある場合、onClickがトリガーされない
-
アンドロイド マシュマロ。Espressoでパーミッションのテスト?
-
車輪の再発明をせずにREST APIを保護する
-
Jenkinsパイプラインで失敗したステージのリトライオプションを実装するには?
-
がチェックアウトされていない...バンドルインストールしても直らない!