cbm-fles/fles_ipc — pull request #3 by mkrieger1 (2014-09-02 11:32:02+00:00)
Title: simplify & extend StorableTimeslice constructors

Hi, ich habe mir den Code von dem Copy-Constructor nicht zu 100% im Detail angeschaut, aber soweit ich es verstehe, werden doch nur die `_data` und `_desc` Member kopiert, oder? Das könnte man auch einfacher wie gezeigt machen. Außerdem habe ich noch einen Move-Constructor hinzugefügt, der sich genauso einfach schreiben lässt und mir an anderer Stelle nützlich wäre.

Als "Beweis" dass das so funktionieren könnte (wenn ich nichts übersehen habe) ein kleines Beispielprogram:

```c++
#include
#include

class Kuh {
public:
using values_t = std::vector>;

Kuh(values_t values)
: _values {values}
{ printf("create @ %p\n", this); }

Kuh(const Kuh& rhs)
: _values {rhs._values}
{ printf("copy %p -> %p\n", &rhs, this); }

Kuh(Kuh&& rhs)
: _values {std::move(rhs._values)}
{ printf("move %p -> %p\n", &rhs, this); }

void show()
{
printf("Kuh @ %p:\n", this);
for (auto& v : _values) {
printf("vector @ %p:", &v);
for (int x : v) {
printf(" %d", x);
}
printf("\n");
}
}

private:
values_t _values;
};

int main()
{
auto k = Kuh {{{1, 2, 3}, {4, 5, 6}}};
auto k2 = Kuh {k};

k.show();
k2.show();

printf("---\n");

auto k3 = Kuh {std::move(k)};

k.show();
k3.show();
}
```