c ++ vector用于存储二进制文件,内存问题

时间:2016-11-01 19:21:58

标签: c++ memory binary stack heap

由于以下代码,我相信我遇到了内存问题:

    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());

我想知道,是因为字符串是在堆栈而不是堆上创建的?有没有办法让字符串分配给堆?

0 个答案:

没有答案