#include <stdlib.h>
#include <iostream>
#include <vector>
#include <string>
class A
{
public:
std::string s;
A()
{
s = "string";
new(this)A(*this);
}
};
int mai
C++の配置newの構文に関する質問があります。次の2つのコードスニペットは機能的に同等であり、互換的に使用できます(最初のものが適切な場合は、2番目のコードを使用することを意味しているわけではありません)。 #1 T* myObj = new T();
// Do something with myObj
delete myObj;
#2 char* mem = new char[siz
連続したメモリに新しいプレースメントを使用する際にいくつかの問題に直面しています。これを行う方法が他にある場合は、私に案内してください。 私のコードを参照してください。 #include <new>
//================================================
class MyClass
{
private:
int ma;
public
ここでは移動コンストラクタで、ほとんどの任意のクラスのための移動の割り当てを定義するための非常に簡単な方法です: class Foo {
public:
Foo(Foo&& foo); // you still have to write this one
Foo& operator=(Foo&& foo) {
if (this != &foo) {