No.5ベストアンサー
- 回答日時:
まず、「エラーになりました」というのは、
相手に状況が全く伝わらないため、コンピュータ系の相談では避けましょう。
代わりに、
「コンパイルが通らない」(+エラーログ添付)とか
「リンクで落ちる」(+エラーログ添付)とか、
「実行時にアクセス違反が起こる」、とか表現してみたらどうでしょうか。
----------------------------------------
肝心の回答ですが、
Array::Set(void)内でアクセスしているarray[0]が
存在しません。
存在しない要素にはアクセスできませんね。
(operator[]は問答無用、at()であれば例外をキャッチできます)
ベタですが、↓これを追加すればとりあえず走りますよ。
vector<int> hoge; array.push_back(hoge);
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
チョコミントアイス
得意ですか?不得意ですか?できれば理由も教えてください。
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
ハマっている「お菓子」を教えて!
この世には、おいしいお菓子がありすぎて……。 次何を食べたらいいか迷っています。 みなさんが今、ハマっている「お菓子」を教えてください!
-
newしないオブジェクトについて
C言語・C++・C#
-
関数から配列を返すには?
C言語・C++・C#
-
適切な変換関数が存在しない???
C言語・C++・C#
-
-
4
C言語での引数の省略方法
C言語・C++・C#
-
5
UMLのユースケース図における「include」と「extend」の意味について
IT・エンジニアリング
-
6
C++ 構造体の一括初期化 {0}
C言語・C++・C#
-
7
fstream型オブジェクトを関数の仮引数にする
C言語・C++・C#
-
8
【C++】関数ポインタの使い方
C言語・C++・C#
-
9
C++ vectorに配列をプッシュしたい
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Cのプログラムからアクセスでき...
-
大量のデータを読み込んで表示...
-
プログラミング言語でアプリや...
-
c++の勉強方法を教えてくださ...
-
gccを行ってもexeファイルが生...
-
C言語って古いですか?
-
Windows Formアプリからコンソ...
-
C言語について。
-
いまc言語を独学で勉強している...
-
c言語
-
C# でソフト開発をした事のある...
-
ホワイトハッカーを目指そうか...
-
逆コンパイルと逆アセンブルの...
-
プログラムの実行時に'<'でリダ...
-
これて逆じゃないですか?
-
あんまり考えたくないけど
-
C言語について。
-
C言語について。
-
だれがとけるの?
-
C言語 配列と関数の練習問題
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語の配列をPush(追加)する...
-
行列
-
np.stack()とnp.array()の違い
-
2次元配列CSVのソート
-
配列の要素(value)に、変数を...
-
C言語 最大値と最小値を求めて...
-
STLのvectorで作った配列をメン...
-
特定の文からメールアドレスの...
-
CArrayのソート
-
MYSQLとPHPによって取得する多...
-
ファイルの書き込みについて教...
-
verilogで、配列の一部をタスク...
-
CArrayの要素としてCStringArra...
-
array_intersectで空欄を比較し...
-
pg_copy_fromの使い方について...
-
構造体を動的に確保&解放
-
同一列内のセルを結合して表示...
-
cakephpでのトランザクション処...
-
c言語 単位行列
-
読み(あ行~わ行)ごとに分け...
おすすめ情報