2013-10-06 4 views
0

안녕하세요. 저는 현재 여러 가지 종류의 효율성을 비교하는 숙제를하고 있습니다. 데이터 요소에 액세스하는 데 어려움을 겪고 있고 약간 바보 같다고 느낍니다. 쉬운 대답. 여기 내 주요 기능입니다.Sort 클래스의 요소에 액세스 할 수 없습니다.

int main() 
{ 
    //declarations 
    int const MYARRAYSIZE = 100; 
    Sort mySort(MYARRAYSIZE); 

    mySort.init_array(); 

    clock_t timeA = clock(); 
    for(int i = 0; i < MYARRAYSIZE; i++) 
    { 
     //run tests 
     mySort.insertion_sort(/*whatgoeshere*/, MYARRAYSIZE); 
    } 
    clock_t timeB = clock(); 
    clock_t diff = timeB - timeA; 

    system("PAUSE"); 
} 

여기 내 헤더

class Sort 
{ 
private: 
    int size; 
    int *myArray; 
public: 
    Sort(int size); 
    ~Sort(); 
    friend ostream& operator << (ostream& out, const Sort& s) 
    { 
     //put code in here 
    } 
    void insertion_sort(int [], int); 
    void selection_sort(int [], int); 
    void merge_sort(int [], int); 
    void quick_sort(int [], int); 
    void partition(int [], int, int&); 
    void merge(int [], int, int); 
    void init_array(); 
    int getSize(); 
}; 

내가에서 myArray에 저장되어있는 배열에 액세스하려고하고 난 단지 클래스에 액세스 할 수 있는지 이해하지만, 나는 그것을 접근에 대해 어떻게 갈 것 ?

+0

배열이 이미 구성원 인 경우 왜 매개 변수입니까? – chris

답변

1

/* whatgoeshere* /

아무 것도 없습니다.

하는 멤버 함수에서 인자를 제거

예 :

그냥 사용 : 그들은 데이터 클래스

의 멤버

그리고 단순히있는 그대로

void insertion_sort();

이는 myArraysize 알고

로 부르기

mySort.insertion_sort();

이 당신의 모든 멤버 함수가 myArraysize를 사용하여 제대로 구현 간주합니다.

+0

와우, 고마워. 나는 그들이 매개 변수를 가지고 있기 때문에 나는 정말로 혼란 스러웠다 고 생각한다. 이 모든 것이 이제는 의미가 있습니다. 멍청한 질문에 대해 유감입니다. – Derked

관련 문제