Naughter Software Logo

CSortedArray / CSortedArrayEx v1.55

CSortedArray is a class derived from the MFC template class "CArray" or ATL template class "CAtlArray". It provides for ordered insertion of items into an array as well as searching and sorting of its items. The compare function used to determine ordering in the array can be easily customised at run-time.

CSortedArrayEx is a specialized version of CSortedArray which uses functors rather than a standard comparison function. Using this version provides up to a 300% speed improvement because functors allow function inlining in optimizing compilers while a raw function pointer can never be inlined.

 

The enclosed zip file contains source code for the class and also includes a VC 2017 MFC / ATL project file to demonstrate the code.

 

Copyright

 

Updates

v1.55 (2 April 2022)

v1.54 (10 May 2020)

v1.53 (23 March 2020)

v1.52 (23 December 2019)

v1.51 (22 September 2019)

v1.50 (26 December 2018)

v1.49 (19 November 2017)

v1.48 (27 April 2017)

v1.47 (31 January 2016)

v1.46 (24 January 2015)

v1.45 (20 April 2012)

v1.44 (16 March 2012)

v1.43 (6 November 2010)

v1.42 (11 July 2010)

v1.41 (7 September 2009)

v1.40 (11 August 2009)

v1.39 (26 July 2009)

v1.38 (29 June 2008)

v1.37 (29 July 2006)

v1.36 (7 July 2006)

v1.35 (12 October 2005)

v1.34 (22 December 2004)

v1.33 (16 October 2004)

v1.32 (13 November 2003)

v1.31 (18 August 2003)

v1.30 (24 January 2003)

v1.29 (11 December 2002)

v1.28 (6 December 2002)

v1.27 (29 May 2002)

v1.26 (16 February 2002)

v1.25 (24 December 2001)

v1.24 (26 October 2001)

v1.23 (1 October 2001)

v1.22 (11 August 2001)

v1.21 (11 August 2001)

v1.2 (5 August 2001)

v1.15 (5 May 2001)

v1.14 (2 October 2000)

v1.13 (20 September 2000)

v1.12 (5 September 2000)

v1.11 (27 August 2000)

v1.10 (24 July 2000)

v1.09 (18 July 2000)

v1.08 (13 May 2000)

v1.07 (2 April 2000)

v1.06 (29 February 2000)

v1.05 (22 February 2000)

v1.04 (21 February 2000)

v1.03 (31 January 2000)

v1.02 (25 January 2000)

v1.01 (12 January 2000)