問題タブ [stdvector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - メソッドからベクトルへの参照を返し、そのパブリック メンバーを使用する
t_vec
class のインスタンスへの参照を格納するベクトルがありますToo
。コードを以下に示します。にはmain
、 と同じメモリ アドレスを持つベクトル t_vec_2 がありますB::t_vec
。
しかし、 t_vec_2[0].val1 にアクセスしようとすると、エラーが発生しますval1 not declared
。
何が間違っているのか指摘していただけますか?また、メソッドからベクトルを返すより良い方法を知っている場合は、お知らせください。前もって感謝します。
c++ - ベクトル関連のメモリ割り当ての質問
次のバグが発生しています。
- クラスがあり
Foo
ます。このクラスのインスタンスは、のstd::vectorvec
に格納されclass B
ます。 - クラスFooでは、で
new
そのオブジェクトを使用してメモリを割り当てたり削除したりして、クラスAのインスタンスを作成しています~Foo()
。
コードはコンパイルされますが、実行時にクラッシュします。delete my_a
クラスのdesstructorを無効にした場合Foo
。コードは正常に実行されます(ただし、メモリリークが発生します)。
誰かがここで何が悪いのかを説明し、修正を提案してもらえますか?
ありがとう!
c++ - erase を使用して std ベクトルの要素オブジェクトを削除する: a) メモリ処理と b) より良い方法?
次のvec_A
インスタンスを格納する がありますclass A
。vec_A.push_back(A());
後の段階でベクター内のいくつかの要素を削除したいのですが、2 つの質問がvec_A.erase(iterator)
あります。.
b) 条件if(num <5)
が num が特定の numberList の中にある場合であると仮定します。これを考えると、以下に示すよりもベクトルの要素を削除するより良い方法はありますか?
c++ - C++ ユーザー定義ベクトル
ユーザー入力でベクトルの名前を定義できるようにしながら、C ++でベクトルを宣言するにはどうすればよいですか? さて、あなたの回答を確認した後、ここに詳細があります。VS08 C++ コンソール アプリケーションからのエラー メッセージは次のとおりです。
コードは次のとおりです。
c++ - std::sortの関数ではなくクラスメソッドを渡す
クラス内で、同じクラスのメソッドを渡すことにより、ベクトルをソートしようとしています。ただし、コンパイル時にエラーが発生します。誰かが問題が何であるかを知ることができますか?ありがとうございました!
次のエラーが発生します:bool型の引数bool (Sorter::)(D&, D&)' does not match
(Sorter :: *)(D&、D&) '
私も使ってみましたsortBynumber(D const& d1, D const& d2)
dll - ベクトルを含む構造体サイズDLL と EXE のサイズの違い
EXE プログラムが単一の関数呼び出しのために DLL をインポートするという状況があります。カスタム構造を渡し、別のカスタム構造を返すことで機能します。これまで、構造体データ メンバーの 1 つをベクター < MyStruct > にするまでは問題なく動作していました。
プログラムで sizeof(vector< MyStruct >) を実行するとサイズが 20 になりますが、DLL 内から実行するとサイズが 24 になります。このサイズの不一致により、ESP ポインター エラーが発生します。
Vector < MyStruct > がプログラムと DLL で異なるサイズになる理由を誰か教えてもらえますか?
DLL とプログラムの両方の構造体が同一であることを再確認しました。
この件について何か助けていただければ幸いです。ありがとうございました。
c++ - 重複したシンボル、SWIG、および C++ ベクトルでのリンカ エラー
2 セットのオブジェクトから共有オブジェクトをコンパイルしようとして、このエラーに遭遇しました。最初のセットには、SWIG によって生成された 1 つの cpp ファイルからコンパイルされた 1 つの .os オブジェクトが含まれています。2 番目のセットには、ラップされるインターフェイスを構成する個々のファイルのすべての .so ファイルが含まれています。
swig c++ ラッパー (Mathlib_wrap.o のソース ファイル) は機械で生成されたもので、見た目が悪く、追跡がさらに困難になるように多くの #define が含まれています。2 番目のセットのすべてのオブジェクト ファイルに再定義が存在するようです。これらすべてのファイルに含まれるヘッダーをたどったところ、#pragma once'd のようです。
問題がどこにあるのかを追跡するために、人々はどのようなアドバイスを持っていますか?
visual-c++ - std::vector の奇妙な動作
私はこのようなクラスを持っています:
これは私のコードの簡略版です。問題は、デバッグモードで完全に機能することです。しかし、リリースモードでは「push_back」行でクラッシュします。(すべての最適化フラグをオフにして)リリースモードでデバッグしましたが、問題はAのコンストラクターにあります.ベクトルのサイズはダミー値で非常に大きく、クリアしても変化しません...
なぜなのかご存知ですか?
ありがとう、
c++ - std::multimapとstd::vectorのクロス?
std :: multimapのように機能するが、ランダムなn番目の要素へのアクセス時間が一定であるSTLコンテナーを探しています。多くの理由でstd::multimapであるようなメモリ内の構造があるため、これが必要ですが、そこに格納されているアイテムは、リストボックスでユーザーに提示する必要があります。データ量が膨大なため、仮想アイテムを含むリストボックスを使用しています(つまり、リストコントロールはX行の値をポーリングします)。
回避策として、現在、追加のstd::vectorを使用して「インデックス」をstd::mapに格納しており、次のように入力します。
しかし、これはあまり洗練された解決策ではありません。
そのような封じ込め器はありますか?
c++ - C++でベクトルが見つからない理由
代替手段は何ですか?
自分で書くべきですか?