해시 테이블 내의 모든 키 값 쌍을 반복하고 싶습니다. 따라서 g_hash_table_foreach() 함수를 사용했습니다 (아래 표시된 프로토 타입). 각 키 값 쌍에 대해 void func 메소드를 호출합니다.각 반복 작업 g_hash_table_foreach
void g_hash_table_foreach(GHashTable *hash_table,GHFunc func,
gpointer user_data);
그러나, 내가 필요로하는 기능을 호출 할 때마다, 다시 값을 반환 방법에 대한. I 필요한
void calculate(gpointer key, gpointer value, gpointer userdata)
{
return calculateNumbers(key, value);
}
int total = 0;
g_hash_table_foreach(mymap, calculate, NULL);
그 변수의 총 저장 계산() 함수에 의해 수신 된 각각의 리턴 값의 합계 :
는 예를 들어 다음의 코드를 고려한다. 나는 이것을 g_hash_table_foreach 메소드로하기가 어렵다.나는 while 루프를 가지고 있고, 전체 변수를 외부에 선언하고 각 쌍의 반복마다 값을 증가시킵니다. 그러나 glib가 한 번에 하나씩 키 - 값 쌍을 구성 할 수 있다고 생각하지 않습니다. (GList와 달리 다음 속성을 가짐) 어떻게하면 좋을까요?
고맙습니다. 작동합니다. =) API가 아직 없습니다. 다시 한번 감사드립니다 :) – Goaler444