![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_10.png?5a7ff87)
No.5ベストアンサー
- 回答日時:
まず、「エラーになりました」というのは、
相手に状況が全く伝わらないため、コンピュータ系の相談では避けましょう。
代わりに、
「コンパイルが通らない」(+エラーログ添付)とか
「リンクで落ちる」(+エラーログ添付)とか、
「実行時にアクセス違反が起こる」、とか表現してみたらどうでしょうか。
----------------------------------------
肝心の回答ですが、
Array::Set(void)内でアクセスしているarray[0]が
存在しません。
存在しない要素にはアクセスできませんね。
(operator[]は問答無用、at()であれば例外をキャッチできます)
ベタですが、↓これを追加すればとりあえず走りますよ。
vector<int> hoge; array.push_back(hoge);
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_10.png?5a7ff87)
No.4
- 回答日時:
void Array::Set(void) ローカルな
Arrayオブジェクトにpush_back() しています。
あと、main() において a::Set() を呼んでません。
ArrayのコンストラクタでSet()を呼ぶか、
main() で a::Set() を呼びましょう。
この回答への補足
解決しました。ありがとうございました。
次に2次元配列をメンバ変数にした場合、エラーになってしまいました。
何がいけないのでしょうか?
重ね重ねすみませんが、よろしくお願いします。
using namespace std;
class Array
{
public:
vector<vector<int> > array;
void Set();
};
void Array::Set()
{
array[0].push_back(1);
array[0].push_back(2);
}
int main()
{
Array a;
a.Set();
cout << a.array.size() << endl;
return 0;
}
No.3
- 回答日時:
> void Array::Set()
> {
> vector<int> array;
> array.push_back(1);
> array.push_back(2);
> }
ここで、push_backを使って値を追加しているのは、あくまでも自動変数のarrayに対してであって、メンバ変数のarrayはまったく触っていません。
メンバ変数に追加したいのであれば、3行目の宣言が不要です。
No.2
- 回答日時:
>Array::Setのメンバ関数でarrayに値をセットします。
>そして、メインからarrayを参照しようとしましたが値が入っていませんでした。
の部分を補足して下さい
この回答への補足
説明不足でスミマセン。
以下のようにメインで配列のサイズを調べると
0となってしまいます。
push_backを2回行ってるので
2が返ってきて欲しいのですが...
何がいけないのでしょうか?
using namespace std;
class Array
{
public:
vector<int> array;
void Set();
};
void Array::Set()
{
vector<int> array;
array.push_back(1);
array.push_back(2);
}
int main()
{
Array a;
cout << a.array.size() << endl;
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# c言語について array[i]-‘0’ これってどーゆー意味ですか? (ちなみに16進数を10進数 5 2022/12/06 18:39
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 1 2022/10/27 14:21
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
- JavaScript オブジェクト配列の各メンバを任意の式で評価して、その評価値が最大のオブジェクトを返す関数はありますか 2 2023/05/20 15:02
- Java Java 配列<選挙> 4 2023/07/31 15:07
- Visual Basic(VBA) VBAのフィルター操作 5 2023/08/08 09:48
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
C++ vectorに配列をプッシュしたい
C言語・C++・C#
-
C++ クラスをメンバにもつクラスについて
C言語・C++・C#
-
クラスのアドレスを引数として渡したい
C言語・C++・C#
-
-
4
c++,ある関数のクラスから別のクラスの関数を呼ぶ
C言語・C++・C#
-
5
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
6
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
7
戻り値で構造体を返すことは可能でしょうか?
C言語・C++・C#
-
8
0除算して、落ちるプログラムと落ちないプログラム
C言語・C++・C#
-
9
C言語 配列の長さの上限
C言語・C++・C#
-
10
error C2664: 'LPCTSTR' に変換できません。
C言語・C++・C#
-
11
fstream型オブジェクトを関数の仮引数にする
C言語・C++・C#
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
fgetc関数について
-
PHPについて教えて下さい。
-
C言語の配列をPush(追加)する...
-
2次元配列のソート
-
プログラミングのPythonのnoteb...
-
C言語で全角文字の扱いについて
-
PHPに関する質問です
-
CArrayの要素としてCStringArra...
-
どのような関数名を付けるべき...
-
読み(あ行~わ行)ごとに分け...
-
foreachの実行結果について
-
配列から値を取得する方法。
-
PHPによる並べ替え(ソーティン...
-
配列の比較
-
行列の計算【配列 関数】
-
配列を返す関数から、一つの要...
-
テキストエリアに入力した複数...
-
Perlで重複行を削除したい
-
配列内の値を分解して再格納
-
PHPでユニークIDを作る
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングのPythonのnoteb...
-
スカラーのベクトル微分
-
特定の文からメールアドレスの...
-
CArrayの要素としてCStringArra...
-
C言語 最大値と最小値を求めて...
-
行列
-
読み(あ行~わ行)ごとに分け...
-
配列の要素(value)に、変数を...
-
C言語の配列をPush(追加)する...
-
STLのvectorで作った配列をメン...
-
php で1から100までの素数の表...
-
【PHP】配列のキー名の修正は可...
-
Perlで重複行を削除したい
-
fgetc関数について
-
CArrayのソート
-
ファイルの書き込みについて教...
-
配列の添え字が小数だとどうなる?
-
PHPのmin関数、「1」以上の数値...
-
forとかで連番の変数を一気に格...
-
delphi 2次元配列がわかりません
おすすめ情報