|
|
发表于 2009-4-30 10:36:32
|
显示全部楼层
Post by cteddy;1981412
除了你说的少量语法不兼容, C++实际上就是C的超集. 一般的C语言程序, 基本不用修改就能用C++编译器编译. 连C++之父都说C++和C的不兼容只是个事故.
这是我随便随便从google出来的一段话:
- 上述的C++之设计目标可以小结如下:
-
- 对于要解决实际问题的程序员而言,C++使程序设计变得更有乐趣;C++是一门通用目的的程序设计语言,它:
-
- [b]——是一个更好的C;[/b] <-----------------注意这一句
-
- ——支持数据抽象;
-
- ——支持面向对象程序设计;
-
- ——支持范型程序设计。
复制代码
当然, 你硬要说C没有class,template,::等等, 或者C++不支持某些99语法, 我也没办法.
我们当然可以有很多理由拒绝C++, 但效率低并不在其中.
事实说明真像,两个hello world一个c,一个c++的,自己回去make看结果。
cpp:
#include <iostream>
#include <sys/time.h>
using namespace std;
int main() {
struct timieval tp1, tp2;
struct timezone tz;
gettimeofday(&tp1, &tz);
cout << "hello world" << endl;
gettimeofday(&tp2, &tz);
printf("need %u microseconds\n", tp2.tv_usec - tp1.tv_usec);
return 0;
}
c:
#include <stdio.h>
#include <sys/time.h>
int main() {
struct timieval tp1, tp2;
struct timezone tz;
gettimeofday(&tp1, &tz);
puts("hello world");
gettimeofday(&tp2, &tz);
printf("need %u microseconds\n", tp2.tv_usec - tp1.tv_usec);
return 0;
}
手写代码非复制粘贴,如果有语法错误,自己改一下。
我这里的执行结果c程序最好到17,最差到92,稳定在20-30;c++最好到37,最差到127,稳定在40-50。
编译环境: gcc 4.3.3
CPU: Intel Core 2 2.2GHz
RAM: 2GB
欢迎讨论,讨论前请拿出数据。 |
|