Boost logo

Boost :

From: Howard Hinnant (hinnant_at_[hidden])
Date: 2004-02-23 19:02:36


If the kind moderators allow this through I promise not to send such
blatantly commercial announcements to the boost developers list again
(at least for awhile :-) ).

<commercial>

Here is contact info which can also be found at our website
www.metrowerks.com:

info_at_[hidden]

US Mail:
  Metrowerks Sales
  Metrowerks
  9801 Metric Blvd.
  Austin, TX 78758

Telephone:
  Toll Free: 800-377-5416
  International: +1 512 997 4700
  Fax: +1 512 997 4901

I'm personally very proud of many of the Pro 9 features which include
pseudo move semantics for vector. For example you might want to try
running the following demo under CodeWarrior and your 2nd favorite
compiler (optimize for speed):

#include <string>
#include <set>
#include <iostream>
#include <time.h>
#include <vector>

int main()
{
     std::string s(20, ' ');
     std::multiset<std::string> ms;
     for (int i = 0; i < 100; ++i)
         ms.insert(s);
     std::vector<std::multiset<std::string> > v(10000, ms);
     clock_t t = clock();
     v.erase(v.begin());
     t = clock() - t;
     std::cout << (double)t/CLOCKS_PER_SEC << '\n';
}

Assuming your clock() function has sufficient resolution to produce
reasonable results on your platform you might be interested in the
results.

Of course this should be old hat to Mac users (Pro 9/Mac has been out
for months).

Fwiw, here's what I'm getting on my Mac:

[G4:~/Documents/Development/JunkMac] hinnant% ./helloworld
0.01 // CodeWarrior Pro 9
[G4:~/Documents/Development/JunkMac] hinnant% g++ -v
Reading specs from /usr/libexec/gcc/darwin/ppc/3.3/specs
Thread model: posix
gcc version 3.3 20030304 (Apple Computer, Inc. build 1495)
[G4:~/Documents/Development/JunkMac] hinnant% g++ -O4 HelloWorld.cp
[G4:~/Documents/Development/JunkMac] hinnant% ./a.out
1.08

</commercial>

-Howard


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk