Я новичок в c++
..so, пожалуйста, помогите мне получить это право.читать данные из пользовательской коллекции (struct Array)
пытается читать из коллекции, в одном варианте реализации я попытался, было несколько bippings из консоли, другой тест .. отображает числа так его, вероятно, указатель на строку ...
в код выглядит следующим образом
DataCollection.h
typedef struct _DataC
{
char* buffer;
UINT Id;
} DataC;
void GetDataC(int ArrSize, DataC** DArr);
DataCollection.cpp
#include "DataCollection.h"
void GetDataC(int ArrSize, DataC** DArr)
{
int count = 0;
int strSize = 10;
*DArr = (DataC*)CoTaskMemAlloc(ArrSize * sizeof(DataC));
DataC* CurData = *DArr;
char TestS[] = "SomeText00";
for (int count = 0; count < ArrSize; count++,CurData++)
{
TestS[strSize-1] = count + '0';
CurData->Id = count;
CurData->buffer = (char*)malloc(sizeof(char)*strSize);
strcpy(CurData->buffer, TestS);
}
}
тест коллекция:
int main(void)
{
StpWatch Stw;long ResSw;
DataC* TestDataArr;// maybe use DataC TestDataArr[] instead...
GetDataC(100000, &TestDataArr);
}
, как я могу читать коллекцию в цикле?
для ...
std::cout<<TestDataArr[count].buffer<<std::endl;
или?
std::cout<<TestDataArr->buffer<<std::endl;
Что такое правильная реализация читать каждый элемент в цикле?
спасибо за ваше время.
std :: cout << TestDataArr [count] -> buffer << std :: endl; – user2970916
@ user2970916, пожалуйста, просмотрите 'GetDataC()', потому что это версия для копирования ... wait check. Я помещаю '.' вместо' -> ' –
@ user2970916 оба способа, которые компилируют ..... bipping из vs console pc bips .. вы знаете их .. (ver 1)' for (int count = 0; condition; count ++, collection ++) с cout :: collection-> member' - (ver 2) 'for (int count = 0; condition; count ++) с cout :: collection [count] .member' код работает медленно и bips –