2010-06-19 4 views
1

그냥 vala에서 다음을 시도해 보았습니다.배열을 vala로 비교하기

int[] x = {1,2}; 
int[] y = {1,2}; 
assert(x == y); 

저는 Vala가 배열의 내용 대신 x와 y의 메모리 위치를 비교한다고 가정합니다. vala로 반복 할 필요없이 두 배열을 비교할 수있는 쉬운 방법이 있습니까?

답변

2

생성 된 C 코드 실제로 비교할 배열 포인터 : 그들은 "값"유형으로 간주되기 때문에

g_assert (x == y); 

struct

깊이 비교되고있다. 배열은 일종의 "참조"유형이며 할당 또는 함수 호출을 할 때 깊이 복사되지 않습니다 (스택에없는 경우).

실제로 요소를 반복해야합니다.

배열 및 컬렉션 비교에 대한 지원이 추가 될 가치가 있습니다. Gee

관련 문제