파이썬에서 함수 나 메서드를 사용하여 변수에 값을 할당하는 방법이 있습니까? 나는 Scheme 인터프리터를 작성 중이며 가능한 경우 프로세스가 크게 단순화 될 것입니다. 이것은과 같이 운영자 모듈의 기본 논리와 수학에 대해 수행 할 수 있습니다 : 당신은 클래스 변수를 사용할 수 있습니다 >>> operator.assign(a, 5)
>>> print(a
, 할당 연산자는 다음 형태 중 하나를 가질 수 (1) MyClass& operator=(const MyClass& rhs);
(2) MyClass& operator=(MyClass& rhs);
(3) MyClass& operator=(MyClass rhs);
(4) const MyClass& operator=(const MyClass& rhs);
클래스 Arr에 대한 대입 연산자가 오버로드되고 있습니다. 소멸자를 사용하여 이전 객체를 삭제하고 할당 된 메모리를 해제 한 다음 이전에 오버로드 된 copy-constructor를 사용하여 호출 객체를 rhs의 복사본으로 만듭니다. this 사진은이를 수행하는 두 가지 다른 방법을 보여줍니다 (50 행과 57 행만 다릅니다). 두 번째 솔루션이 작동하는
String이라는 클래스를 정의하고 초기화를 위해 = assignment을 사용하여 String 객체를 선언했지만 그 뒤에있는 프로세스에 대해 몇 가지 질문이 있습니다. 결과는 다음과 같다 class String{
public:
String() :str(""){ cout << "default constructor" << endl; }
S
아래의 복사 생성자가 제대로 작동하지만 복사 할당 연산자가 잘못되었음을 이해하지 못합니다. #include <iostream>
template <typename... Ts> class foo;
template <typename Last>
class foo<Last> {
Last last;
public:
foo (Last r) :
이의 문제 시각화 지원하는 도우미 클래스 만들어 보자 벡터의 크기가 증가하지 않습니다 class C
{
int ID = 0;
public:
C(const int newID)
{
ID = newID;
}
int getID()
{
return ID;
}
};
것은 당신이 빈 std::vector<C> 다음 예약을 만들