vectorを参照渡しするときの方法について教えてくください
class sansyo
{
private:
std::vector<short> _stdSansyo;
public:
void setSansyo(std::vector<short>& sansyo);
}
;void sansyo::setSansyo(std::vector<short>& sansyo)
{
_stdSansyo = sansyo;
_stdSansyo[5] = 500;
}
int main()
{
std::vector<short> moto;
sansyo cSansyo;
for (int i = 0; i < 10; i++) {
short tmp = i * 2;
moto.push_back(tmp);
}
cSansyo.setSansyo(moto);//ここで参照渡しのはず
for (int i = 0; i < 10; i++) {
std::cout << "値=" << moto[i] << "\n"; //値が変わっていない
}
}
こんなふうに、参照渡しにしてみたのですがどうも参照渡しになっていないでそのまま新しいvectorが作られちゃったぽいのですが
これだとメモリを倍使っちゃってるし、時間も掛かってますよね
どういうふうにしたら、喚ばれた側の関数で参照渡しに出来るのでしょう
探検
C++相談室 part154
■ このスレッドは過去ログ倉庫に格納されています
599デフォルトの名無しさん
2021/02/07(日) 16:31:48.90ID:jcLu/xd9■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 緊急地震速報 東北 北海道 [KingFisherは魚じゃないよ★]
- ■緊急地震速報 東北 北海道 最大震度6強 [人気者★]
- ■津波警報発令 3m 青森太平洋沿岸 岩手 北海道 す ぐ 逃 げ て [人気者★]
- 【地震速報】青森県で震度6強 沿岸部に津波警報 [ぐれ★]
- 津波警報発令! 青森太平洋沿岸 岩手 北海道太平洋沿岸中部 すぐ逃げて!!! [KingFisherは魚じゃないよ★]
- 【速報】高市総理が官邸入り [Hitzeschleier★]
- 地震
- 津波警報 3メートル 早く逃げろ!!!!!!!! [579392623]
- 地震 ★2
- 高市早苗、ネムネム😴 [175344491]
- 【速報】高市早苗、起床 [779938112]
- 大地震
