Improving the performance of C programs has been a topic of great inte
rest for years. Both hardware technology and compiler optimization res
earch has been applied in an effort to make C programs execute faster.
In many application domains, the C++ language is replacing C as the p
rogramming language of choice. In this paper, we measure the empirical
behaviour of a group of significant C and C++ programs and attempt to
identify and quantify behavioural differences between them. Our goal
is to investigate whether optimization technology that has been succes
sful for C programs will also be successful in C++ programs. We furthe
rmore identify behavioural characteristics of C++ programs that sugges
t optimizations that should be applied in those programs. Our results
show that C++ programs exhibit behaviour that is significantly differe
nt to that of C programs. These results should be of interest to compi
ler writers and architecture designers who are designing systems to ex
ecute object-oriented programs.