안녕하세요 누군가가 다음 코드를 잘못 설명해 주시겠습니까? 먼저이 클래스를 사용하는 다른 클래스의 추상 클래스 하위를 포함합니다.다형 벡터
#include "child.h"
다음은 하위의 인스턴스를 가리키는 포인터로 아래 2 차원 벡터를 채우고 있습니다.
vector<vector<abstractitem*>*>vec;
다음은이 클래스 함수를 클래스에 사용하고 있습니다. get 함수는 추상 클래스에서 찾을 수 있습니다.
void fn::getall()
{
for (int i=0;i<m_nrows;i++)
{
for(int j=0;j<m_ncolumns;j++)
{
vec[i][j]->get(); //error on this line: do you intend to use . instead?
}
printf("\n");
}
}
귀하의 도움을 많이 주시면 감사하겠습니다.
당신은 아마'벡터 <벡터> vec'를 대신 작성하는 것을 의미했습니다? –
5gon12eder
'vec [i]'는'벡터 *'를줍니다. 'vec [i] [j]'는'벡터 '을줍니다. 포인터를 사방에 쓰고 싶다면 어떻게 작동하는지 이해해야합니다. –
juanchopanza
감사합니다. 내 문제가 해결되었습니다. 임 새로운 포인터. 왜 벡터 * 내가 vec [i]를 제공했는지 설명해 주시겠습니까? –
fbdg