私は、imagesというベクトルのベクトルを持っています。私はこのクラスを参照でSectionというクラスに渡して、コピーされません。参照に基づいてクラスにベクトルを渡す
イメージがヘッダファイルに作成されます。イメージが付きドロー法では、その中に作成したテクスチャを持っています
void ofApp::draw(){
if (video0.isFrameNew()){
ofPixels pixels = video0.getPixels();
images.emplace_back();
images.back().allocate(pixels);
}
}
私は参照することにより、私の画像を返すためにgetTextures()関数を持っている私は、私はそれを使用する前に初期化しているとして、ベクターがまだ存在するべきだと思いますこの関数。私は、ボイドofApp::setup()
私は、コンストラクタに私の呼び出しにベクトルを渡すためにgetTextures()を使用し
imSec.push_back(Section(getTextures());
にループの中で私のコンストラクタでこれを使用
vector<ofTexture> &ofApp::getTextures(){
return images;
}
。しかし、自分のプログラムを実行すると、ベクターへの参照が機能しているとは思わないので、ベクターの内容を描画することはできないようです。
参照渡しの正しい方法についての助けがあれば素晴らしいでしょう。
'images 'は' getTextures() 'によって返された参照よりも古いですか? –
[最小限で完全であり、検証可能な例](http://stackoverflow.com/help/mcve)を作成してください。そうしないと、意味のある方法では本当に答えることができなくなります。 –
私は確信していませんが、私はこれが問題になる可能性があると考えています。 – Elliot