他の人のプログラムをLibにして流用しようとしているのですが,
問題にぶち当たってます.
Libで定義されているクラスに,
ある情報を取得/格納できるクラスがあるのですが,
いざ,そのクラスをインスタンス化し,
クラスで定義してあるメソッドを実行してインスタンスのメンバ変数に情報を格納した後に,インスタンスのメンバの情報をメソッドなどは使わずに取り出そうとすると一部の情報が格納されておらず抜き出すことができません.
そのクラスにはシングルトンで実装されており,クラスが持っている情報表示用メソッドを実行すると,ちゃんと,格納されてるぽいのですが・・・・・.もちろん,メンバ変数はパブリックです.
唯一違うとすれば,取り出すことができるメンバの型はdoubleで,取り出せないのはVector< (独自の構造体) >という点くらいです・・・・.エラー内容は取り出せないというよりはVectorのメモリが確保されていないような感じです.
当然,Libをexeで起動した場合は正常に動いているます.
何か思いつく原因は無いでしょうか??
宜しくお願いします!!
No.1ベストアンサー
- 回答日時:
多分ですが。
。。vectorの実装をLib側で行っており、vector<独自の構造体>の「独自の構造体」をLibを使う側で行っていませんか?
この場合、Lib側のコンパイル時に「独自の構造体」のサイズを確定できないため、コンパイルは一応正常終了しても可笑しな動作になります。
回答ありがとうございます!!
ドンピシャです・・・・・.
独自の構造体はLibで定義されたクラス内部もしくは名前空間の中で宣言しており,Vector<独自の構造体>もLib内のクラスで宣言しています.
Lib内のクラスのメソッドを実行した場合は,vector<独自の構造体>を取得することは出来ているはずですが・・・
つまり,
1,独自の構造体はサイズを確定できないためLibにする場合は利用できない
それとも,
2,Lib内で処理が完結する分には使うことができるが,Libを呼び出しているソースからは,独自の構造体のサイズが確定できないため利用できない.
どちらになるのでしょうか??
Lib側の仕様を大規模に変更することは不可能なのですが回避策は何か無いでしょうか??
SetメソッドやGetメソッドを追加したりいしなければならないでしょうか??
あと,Libの元を作った人いわく,「Libでも正常に動いたよ」なのだそうですが・・・・勘違いなのでしょうか??
教えていただけないでしょうか?
宜しくお願いします!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/17 18:41
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/06 09:28
- その他(プログラミング・Web制作) このプログラミングをどう組みますか? Googlecolabでやってるんですが、出来る方お願いします 1 2022/07/13 10:52
- コンサルティング・アドバイザー UL など海外規格をまとめる方法について 3 2023/08/16 10:29
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- C言語・C++・C# C言語 2 2022/07/21 00:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(vba)他のアプリケーションの右...
-
「ラッパークラス」の存在意義...
-
「継承されたメソッドの可視性...
-
抽象クラスをJUNITでテストする...
-
ASP.NETでの共通コードの書き方...
-
オーバーライドとラッパーの違い
-
【C#】クラスのコンストラクタ...
-
interface,extend,implementの...
-
【継承】親のメソッドの実行
-
【設計思想の質問】staticメソ...
-
Java AWTのコンポーネントについて
-
JAVAにFTP転送をサポートし...
-
VB DLLプロジェクトについて
-
C# 「データが失なわれる可能性...
-
Javaでは多重継承ができない、...
-
C#からDLLを呼びたいのですが・...
-
JTextFieldの入力制限
-
変数名の付け方
-
エクセルVBAで、条件に一致する...
-
「タイプ初期化子が例外をスロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
interface,extend,implementの...
-
抽象クラスをJUNITでテストする...
-
「ラッパークラス」の存在意義...
-
(vba)他のアプリケーションの右...
-
ASP.NETでの共通コードの書き方...
-
VB DLLプロジェクトについて
-
C#からDLLを呼びたいのですが・...
-
c++でのヘッダーファイルの循環...
-
委譲って何ですか?
-
「継承されたメソッドの可視性...
-
【C#】クラスのコンストラクタ...
-
Javaでのジェネリクス型パラメ...
-
C# 「データが失なわれる可能性...
-
Excel vbaのプログラムでガンマ...
-
ファイルパスが取得出来ない(P...
-
オーバーライドとラッパーの違い
-
compareToにおける「自然順序付...
-
メソッドの引数にクラス名を渡す
-
vb.net 自作プロパティの削除に...
-
VBがオブジェクト指向言語でな...
おすすめ情報