나는 C++ 입문서 5 단원을 읽었습니다. 복사 및 스왑을 사용하는 대입 연산자에서 참조가 아닌 매개 변수를 사용하는 경우에는 괜찮 았지만 다른 대입 연산자에서는 항상 참조 매개 변수를 사용하고 왼쪽 피연산자를 파기하기 전에 오른쪽 피연산자를 복사하여 할당 연산자는 객체가 자신에게 할당되면 올바르게 작동합니다. 왜 우리가 함수 본문에 오른쪽 피연산자를 복사
PHP를 사용하는 배열에서 작업하고 있는데 배열의 항목을 바꿔 쓰려고합니다. !- #- #
@- !- #
@- @- !
I 출력은 다음과 같이 할 수 있도록 배열의 인덱스를 교환하는 것을 시도하고있다 : !- @- @
#- !- @
#- #- !
위의 코드의 출력을 가지고 <html>
<body>
<p>
<?php
$test2
저는 IPC에 대한 newbee입니다. Writer 프로세스는 데이터를 공유 메모리에 씁니다. 많은 독자 프로세스가 데이터를 읽습니다. 기록 할 데이터에는 고유 한 식별자가 있으며 빠른 액세스 (예 : STL :: map 또는 조회 용 해시 맵)를 위해 고유 한 키로 인덱싱해야합니다. 또한 데이터는 가변 길이 레코드 (XML)입니다 (평균 길이는 200-2
은 내가 나중에, 내가 내 클래스를 변경, 기능 void MyClass::swap(MyClass& other)
{
std::swap(a,other.a);
std::swap(b,other.b);
}
만약을 작성하고 회원 a을 제거 복사 스왑 관용구를 사용하기 위해 클래스 class MyClass
{
public :
int a;
NB :이 질문은 a previous one 다음에 나옵니다. 새로운 질문으로 계속 부탁드립니다. 내가 구현하려고 은 "3 년 반 큰 규칙"이처럼 보이는 나무 클래스 (복사 및 스왑 관용구) : 나는 this guideline을 따르도록 시도하고있다 class Tree
{
friend void swap(Tree &first, Tree &secon
나는 다음과 같은 오류가 점점 오전 : 다음 코드는 컴파일 [matt ~] g++ -std=c++11 main.cpp -DCOPY_AND_SWAP && ./a.out
main.cpp: In function ‘int main(int, const char* const*)’:
main.cpp:101:24: error: ambiguous overload for
operator=을 구현해야하므로 클래스에 Copy-and-Swap Idiom을 구현하려고하고 있으며 참조 멤버가 있으므로 참조는 한 번만 할당 할 수 있습니다. 앞서 말한 관용구가 유효한 해결 방법이라고 생각했습니다. 하지만 지금은 빌드 오류 받고 있어요 : >c:\Program Files\Microsoft Visual Studio 10.0\VC\incl
OK, 그래서 나는 모두 copy-and-swap idiom에 팔렸고, 나는 그것을 구현하는 방법을 대부분 알고 있다고 생각합니다. 그러나 코드베이스는 MFC's CString class을 문자열로 사용하며 변경되지 않습니다. swap해야하기 때문에 그 던질 수 임시 CString을 객체를 생성하기 때문에 내가 std::swap(this->my_cstrin