Bir C++ sınıfı MyObject
var ve bu verileri bir akışa benzer şekilde beslemek istiyorum (ancak doğrudan bir sstream'in aksine, gelen verilerin formatlanması özel yol). MyObject için bir operatörün kendisine verilen girişi yemeye nasıl yükleyeceğini anlayamıyorum.Bir C++ Sınıfı özel bir ostream gibi davranıyor, sstream
class MyObject {
public:
ostringstream s;
FEEDME
};
int main() {
MyObject obj;
obj.FEEDME << "Hello" << 12345;
// I want obj.s == ":Hello::12345:"
}
bu kadar içinde beslenen her öğenin çevrilmesini istiyorum:
Yani verilen örnekte, s = ": Merhaba :: 12345" nihai sonuç olmalıdır. Benim sorum ne, ne zaman bir <<something
, bir şey etrafında: koymak etrafında nesneyi söyleyebilirim.
Bu mümkün mü?
sayesinde ben hala bir hata alıyorum, şimdi bunu nasıl uygulanacağı konusunda temele sahip düşünüyorum: için MyObject & operatörünü "hatası (? Eğer '&' unuttunuz mu) üyesinin geçersiz kullanımı" < <(const T & x) { Ama bununla uğraşacak ve çözülecektir. Sağolun efendim. –
Bence bu derleyici hangi g ++ 4.3.3'ü kullanıyor? –
g ++ (GCC) 4.3.2, doğru şekilde derlediniz ve tam istediğim gibi çalışıyorsunuz! Teşekkür ederim. Sorun programım için özel bir şey gibi görünüyor. –