由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 除了类,c++和C区别在那?
相关主题
问个过时的问题[合集] C++ question -- how to save objects
纸上谈兵问问开发ios的,有用C++来组织代码的么?
大牛给介绍一下Objective C vs C++ 的优劣吧C, C++, Java, C#, Objective-C,
Block on mac os x解释一下吧Re: C语言的前途
我老不厚道地说一句,C的工作稳定是假的。C语言的变量都一定要放在stack上吗?
求教python问题,在线等 (转载)C/C++函数调用和栈内存
Literate programming问个 C++到C的问题
为啥允许这样的const设计strcat()
相关话题的讨论汇总
话题: c++话题: objective话题: 区别话题: 程序话题: oriented
进入Programming版参与讨论
1 (共1页)
h***i
发帖数: 427
1
老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
r*******y
发帖数: 290
2
simple: C is a subset of C++
complex:C++ is far more complex than C, design patterns are different

【在 h***i 的大作中提到】
: 老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
b********n
发帖数: 609
3
麻烦您拿C的nacro给我写个templated metaprogram吧,linked-list在compile-time的
sorting function。

【在 h***i 的大作中提到】
: 老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
v*********o
发帖数: 5
4
C++是C的超集,也可以说C是C++的子集。
C++增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C程序中使用,尽
管C++包含了所有的C,但显然没有任何C++编译器能编译这样的C程序。
C程序员可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写
出来。而C++可以使用空参数列表。
C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。
标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数。
C++中还增加了bool型变量和wchar_t型变量
C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。
C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。
在C语言中,输入输出是使用语句scanf()和printf()来实现的,而C++中是使用类来实现
的。
c++中引入了安全的类型转换机制
C++函数的原型中可以声明一个或多个带有默认值的参数。如果调用函数时,省略了相应
的实际参数,那么编译

【在 h***i 的大作中提到】
: 老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
y*******g
发帖数: 6599
5
没看到template?

,尽
void写

【在 v*********o 的大作中提到】
: C++是C的超集,也可以说C是C++的子集。
: C++增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C程序中使用,尽
: 管C++包含了所有的C,但显然没有任何C++编译器能编译这样的C程序。
: C程序员可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写
: 出来。而C++可以使用空参数列表。
: C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。
: 标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数。
: C++中还增加了bool型变量和wchar_t型变量
: C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。
: C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。

v*********o
发帖数: 5
6
觉得说下C中有的部分就可以了吧...木有的部分,显而易见啊....

【在 y*******g 的大作中提到】
: 没看到template?
:
: ,尽
: void写

x*********l
发帖数: 594
7
zan

,尽
void写

【在 v*********o 的大作中提到】
: C++是C的超集,也可以说C是C++的子集。
: C++增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C程序中使用,尽
: 管C++包含了所有的C,但显然没有任何C++编译器能编译这样的C程序。
: C程序员可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写
: 出来。而C++可以使用空参数列表。
: C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。
: 标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数。
: C++中还增加了bool型变量和wchar_t型变量
: C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。
: C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。

l****g
发帖数: 761
8
好多年以前我以为C++是C的 superset
结果被一些prof狂鄙视
最后结论是
基本上 C++ 和 C 是完全不同的语言
(这个是从设计思想上说的, 不是仅仅是多个函数库什么的
也就是说, 写C程序的模块思路根本在C++里面不应该被使用 )
只是 C++ 保留了一些关键字来兼容 C
当然, 没有鄙视楼上各位的意思
因为这两个语言我都不常用, 其实没啥发言权
f*******y
发帖数: 988
9
基本上一致认为这是不同的语言
一般来说大量的使用模板,异常,多态、继承才会被认为是c++程序

【在 h***i 的大作中提到】
: 老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
d***q
发帖数: 1119
10
you don't need to use template to develop your app. c++ supports different
ways to accomplish your task
相关主题
求教python问题,在线等 (转载)[合集] C++ question -- how to save objects
Literate programming问问开发ios的,有用C++来组织代码的么?
为啥允许这样的const设计C, C++, Java, C#, Objective-C,
进入Programming版参与讨论
f*******y
发帖数: 988
11
严格来说c++是多范型的,你就算用c写一个过程式的程序也可以算c++程序
不过practice中你在简历上写会c++,人家都assume你会点继承啊模板啊啥的

【在 d***q 的大作中提到】
: you don't need to use template to develop your app. c++ supports different
: ways to accomplish your task

w******p
发帖数: 166
12
C++ = C + Objective C + templates + STL
c********x
发帖数: 84
13
C is precedure oriented , C++ object oriented.
t****u
发帖数: 8614
14
your prof is right.
C focuses on verb, made by functions.
C++ focuses on noun, made by objects,
They have totally different concepts to write code.

【在 l****g 的大作中提到】
: 好多年以前我以为C++是C的 superset
: 结果被一些prof狂鄙视
: 最后结论是
: 基本上 C++ 和 C 是完全不同的语言
: (这个是从设计思想上说的, 不是仅仅是多个函数库什么的
: 也就是说, 写C程序的模块思路根本在C++里面不应该被使用 )
: 只是 C++ 保留了一些关键字来兼容 C
: 当然, 没有鄙视楼上各位的意思
: 因为这两个语言我都不常用, 其实没啥发言权

f*****Q
发帖数: 1912
15

Objective C的语法更像smalltalk而不是C。至于Objective C2.0,差别就更大了。

【在 w******p 的大作中提到】
: C++ = C + Objective C + templates + STL
T*******x
发帖数: 8565
16

C++抽象出object的概念,
为了方便的利用这个概念,语言的设计也有相应调整。
其余的没什么区别。当然这个区别也不小。
我们考虑真实世界中的问题是如何解决的吧。
首先是自顶向下的设计思想,这个是C/C++共有的,也是一切语言都必须共有的。
然后C++的方法是,把任务分配给各个职能部门----object,
职能部门要完成各种各样的功能,这又需要自顶向下的设计思想,
然后再分配给小的职能部门,就这样交替运用。
而C的方法是自顶向下一贯到底直到细枝末节。
object-oriented的概念存在于设计思想中,
清晰的提出这个概念,理论就上了一个台阶。
有了这个思想,用C也可以写出oo的程序。

【在 h***i 的大作中提到】
: 老有人问我程序用什么遍地,偶就说是c。C++和C还有大区别否?》
1 (共1页)
进入Programming版参与讨论
相关主题
strcat()我老不厚道地说一句,C的工作稳定是假的。
嵌入式编程问题求教python问题,在线等 (转载)
[合集] Java不适合于作为主要编程教学语言by孟岩Literate programming
C语言重复定义问题为啥允许这样的const设计
问个过时的问题[合集] C++ question -- how to save objects
纸上谈兵问问开发ios的,有用C++来组织代码的么?
大牛给介绍一下Objective C vs C++ 的优劣吧C, C++, Java, C#, Objective-C,
Block on mac os x解释一下吧Re: C语言的前途
相关话题的讨论汇总
话题: c++话题: objective话题: 区别话题: 程序话题: oriented