# ArrayBinarySearch Searches for the specified value in an ascending-sorted one-dimensional array using the IComparable interface to compare elements. ``` template int ArrayBinarySearch(    T&             array[],         // an array for search    const int      start_index,     // the starting index    const int      count,           // the search range    T              value,           // the search value    IComparer*  comparer         // interface to compare    ); ``` Parameters &array[] [out]  The array to search in. value [in]  The searched value. *comparer [in]  An interface for comparing elements. start_index [in] The starting index from which the search begins. count [in]  The length of the search range. Return Value Returns the index of the found element. If the search value is not found, it returns the index of the smallest element, which is closest in value.