class b
{
public:
b(a param); //конструктор
void f();
private:
a data;
};
b::b(a param)
{
data=param;
}
b::f()
{
//чтото делаем с data, не важно..
}
это работает, но вот что смущает:
в конструкторе вроде как происходит поразрядное копирование структуры, т.е. копируется адрес объекта AnsiString из param в data
затем param выходит из области видимости и уничтожается, s в data теперь указывает на мусор? или всетаки копируется объект AnsiString?