$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Dirk Gerrits (dirkg_at_[hidden])
Date: 2002-05-16 11:39:08
> One night while trying to fall asleep my mind drifted to
> this problem (yeah, I know what that says about me),
It merely says that you're a programmer. :)
> However, there are issues with "move semantics" that have
> caused a lot of questions about how to use std::auto_ptr<>
> correctly, and these issues would exist here as well.
I'm not 100% sure exactly which issues you mean. Surely, the
issue that auto_ptrs can't be used in containers is not
relevant here. ;)
But 'pass by value acts like a sink' does apply here right?
void func(auto_ptr ptr) {};
{
// code here
} // ptr's value is destroyed [mutex is unlocked]
int main()
{
auto_ptr<int> ptr(new int(0));
// use ptr here, no problemo [use locked object]
func(ptr);
// use ptr again (as a null pointer!) [use object, now unlocked!]
} // destructor is now a no-op
I can see this would be problematic. But what other issues are
you referring to?
Dirk Gerrits