由于以下代码,我相信我遇到了内存问题:
const char *current = "myfile.txt"
std::ifstream input( current, std::ios::binary );
// copies all data into buffer
std::vector<BYTE> buffer((
std::istreambuf_iterator<char>(input)),
(std::istreambuf_iterator<char>()));
std::string encodedData = base64_encode(&buffer[0], buffer.size());
printf("%d - %s", encodedData.size(), encodedData.c_str());
我想知道,是因为字符串是在堆栈而不是堆上创建的?有没有办法让字符串分配给堆?