相关疑难解决方法(0)

什么是复制和交换习语?

这个成语是什么,什么时候应该使用?它解决了哪些问题?当使用C++ 11时,成语是否会改变?

虽然在许多地方已经提到过,但我们没有任何单一的"它是什么"问题和答案,所以在这里.以下是前面提到的地方的部分列表:

c++ c++-faq copy-constructor assignment-operator copy-and-swap

1907
推荐指数
5
解决办法
34万
查看次数

C++中的POD类型是什么?

我有几次遇到这个术语POD型.这是什么意思?

c++ types c++-faq

919
推荐指数
8
解决办法
29万
查看次数

什么是c ++的默认分配操作行为?

比如,它让我困惑:

struct A {
//  some fileds...
    char buf[SIZE];
};

A a;
a = a;
Run Code Online (Sandbox Code Playgroud)

通过A的字段buf,看起来默认的赋值操作可能会调用类似于memcpy将对象X分配给Y的东西,所以如果将对象分配给自身并且没有定义明确的赋值操作,a = a;如上所述.

memcpy手册页:

DESCRIPTION

The  memcpy() function copies n bytes from memory area src to memory area dest.  The memory areas must not overlap.  Use memmove(3) if the memory areas do overlap.
Run Code Online (Sandbox Code Playgroud)

如果使用memcpy,可能会发生一些未定义的行为.

那么,C++对象中的默认赋值操作行为是什么?

c++ assignment-operator

8
推荐指数
1
解决办法
2589
查看次数