سؤال

وكنت أفكر في "تسلسل" بضعة ج ++ iostreams توغيثير لتصفية مساهمة مرتين. أنا باستخدام gzstreams لقراءة الملفات المضغوطة زليب وأنا أفكر في الترميز تيار الذي يقرأ من تيار ويؤدي التحويلات الترميز. ربما عن طريق تمرير تيار فتح كمعلمة منشئ ... كيف كنت تعتقد أن هذا يمكن أن يكون أفضل إنجاز؟

هل كانت مفيدة؟

المحلول

وأنا لم تستخدم هذا ولكن زيادة في <لأ href = "http://www.boost.org/doc/libs/1_38_0/libs/iostreams/doc/classes/filtering_stream.html" يختلط = "نوفولو noreferrer" > filtering_stream قد تساعد.

وعلى سبيل المثال وجدت قائمة بريدية آخر مع indent.hpp ، الذي ينفذ عامل تصفية الإخراج التي تزكي المخرجات:

boost::iostreams::filtering_ostream out; 
indent_filter::push(out,2); 
out.push(std::cout); 
<اقتباس فقرة>   

واستخدامه مثل ذلك:

out << "Hello Filter!\n" 
    << indent_in 
    << "this is\n" 
    << "indented\n" 
    << indent_out 
    << "until here\n" 
    ; 
<اقتباس فقرة>   

والذي سيؤدي في الإخراج:

Hello Filter! 
  this is 
  indented 
until here 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top