Есть два класса, второй из них хранит в себе вектор, с указателями на объекты первого класса. Как во втором классе через итератор обращаться к методам обьектов первого класса?
В примере в displayVectorINT()
и displayVector()
:
#include <vector>
#include <iostream>
using namespace std;
class MyFirstClass
{
public:
int number;
public:
MyFirstClass(int number_)
{
number = number_;
}
int returnNumber()
{
return number;
}
};
class MySecondClass
{
private:
vector<MyFirstClass*> vec;
public:
MySecondClass()
{
}
void addToVector()
{
vec.push_back(new MyFirstClass(1));
}
void displayVector()
{
for (vector<MyFirstClass*>::iterator it = vec.begin(); it != vec.end(); it++)
{
std::cout << **it.number; // <-- как обратиться к методу класса через итератор?
}
}
void displayVectorINT()
{
for (int i = 0; i < vec.size(); i++)
{
std::cout << vec[i]->returnNumber(); // <-- тут работает
}
}
};
int main()
{
MySecondClass ob;
ob.addToVector();
ob.displayVector();
return 1;
}
С помощью *(it)->метод.
*(it)
разыменовывает итератор, а оператор ->
вызывает у указателя метод класса.
Я создаю кучу спрайтов и загружаю картинки в текстуры вот так
Задача такова: Существует консольное приложение, осуществляющее некоторое действие (в частности: копирование файла с сохранением времени...
Имею такую матрицу vector<vector<float>> matrix n-го размеракаким образом ее передать через сокеты на сервер
Написал такой код, проходит половину тестов, из тех что не проходят - половина ограничение по времени, половина неверный ответГде в коде ошибка...