[英]Accessing std::vector data members of a class from its member functions
我有一個在頭文件(.hpp)中定義以下成員的類:
public :
int loadData(char* filename);
private :
std::vector<vertex> vertices;
std::vector<triangle> triangles;
std::vector<frame> frames;
vertex
, triangle
和frame
是在此頭文件中包含的另一個頭文件中定義的結構。
現在,在.cpp中的函數loadData
的定義中,我無法訪問成員的vertices
, triangles
和frames
。 例如,我有以下代碼導致下面顯示的錯誤:
cout << "total vertices stored= " << vertices.size() << endl;
motionViewer.cpp:59: error: 'vertices' was not declared in this scope
為什么我不能訪問這些成員?
感謝您的幫助。
盲注:因為您忘記將類名放在.cpp中的loadData方法之前:
int className::loadData(char* filename)
但是請確保您需要顯示更多代碼。
可能您忘記了使用cpp文件中的(類)作用域。
喜歡:
void motionViewer::loadData(char* filename)
{
// ...
}
假設類的名稱為motionViewer
。
您確定沒有錯過::
嗎? 在cpp中:
#include "header_name.h"
ClassName::loadData( ..
//...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.