Имам обект std::string
, съдържащ двоични данни, които трябва да запиша във файл. Може ли ofstream f("name"); f << s;
да бъде проблематично по някакъв начин? Трябва да прочета данните обратно точно както бяха първоначално.
Разбира се, мога да използвам fwrite(s.c_str(), s.size(), 1, filep)
, има ли плюсове / минуси на двата метода?
ofstream
в двоичен режим... независимо дали вашите данни са двоични или не, честно казано), бих използвалvector<char>
за добавения фактор за добро усещане. Има ли причина да не го направиш? - person Lightness Races in Orbit   schedule 18.03.2011string
.string
изглеждаше удобен интерфейс за манипулиране на буфери, като добавяне/заместване в друго съдържание и т.н. В един момент реших да дефинирамbinaryString
катоbasic_string<unsigned char>
, но това изискваше твърде много време за рефакторинг, което нямах по това време. Но мога ли да използвам оператора<<
сvector<char>
? - person davka   schedule 18.03.2011<<
за двоични данни така или иначе, тъй като мозъкът ми го чете като форматиран изход, което не е това, което правите. Отново, това е напълно валидно, но просто не бих обърквал мозъка си така. :) Родното добавяне обаче със сигурност е полезно. - person Lightness Races in Orbit   schedule 19.03.2011