Я хочу получить прямой доступ к вектору BigArray::v
, который является членом класса, и распечатайте его. Но компилятор не будет строить свой код:Как получить прямой доступ к члену векторных данных класса и распечатать его?
#include <iostream>
#include <vector>
using namespace std;
class BigArray
{
private:
vector<int> v={1,2,3,4,5,6,7,8,9,10};
int accessCounter;
public:
const vector<int> & getVector() const {return v;}
};
int main(int argc, const char * argv[]) {
// insert code here...
BigArray b;
cout<< *b.getVector()<< endl;
return 0;
}
Похоже, вы могли бы использовать [хороший C++ книги] (http://stackoverflow.com/questions/388242/the-definitive- c-book-guide-and-list) – NathanOliver
Вы пытаетесь разыменовать «вектор», а затем распечатываете его. – LWimsey
Вы должны были видеть из [гораздо более простого кода, подобного этому] (http://ideone.com/n5UO7k), который вы не может «печатать вектор», используя просто 'cout' и вектор. Поэтому сначала разрешите эту простую задачу перед тем, как вводить классы в микс. – PaulMcKenzie