5个回答
展开全部
说起来关系不大,其实关系也有点厉害。
C++是面向对象,C语言是面向过程。
但是,毕竟C++是从C语言发展过来的,关键在于C++是通过封装C而形成的。在实现角度来讲,C++底层是用C来实现的,一定程度而言,C++可以说就是C。在思想上,C++使用对象的思想来解决问题,C用过程的思想来解决问题。
举个例,C语言的指针,C++把它封装成句柄。也就是句柄的本质就是指针,对指针的封装,并添加一些额外的操作而形成句柄,这些额外的操作来实现对指针的保护,如防止能存泄漏等等C语言指针的弊端。
又如,C语言的结构体,跟C++的类,在内存的存储方式很相像的,具体就不描述了。
做个不是很恰当的比如,一条宝石项链,把宝石比喻成C,把整条项链比喻成C++。
说回正题,学完C++后再学C有关系吗?
如果你的初期目标只是学会C++的语法,并运用它,那么这是没多大关系的。
如果你后期想学精通C++,那么你就得好好学C,弄透C,明白是怎么通过把C封装成C++的,那么C++的本质你也清楚个七七八八了。当然,对于解决问题的思想另当别论。
据我所知,C++课本的前面章节都是在讲C的语法。所以我觉得也不用太在意这个问题。并且我了解到,如果学校以C++入门,那么一年的学习中,其中前半个学期学C,后半学期学C++。
总的来说,你避免不了先学C。
如果你已经有了别的面向对象语言的学习基础了,如Java。其实我觉得直接学习C++的障碍也不大。
我说的也是片面,你可参考。
其实其实,学就学吧,还在意这些干嘛,学不懂再回头看看。就如同我们读书时遇到的问题,语文做阅读题,是先读题目再读文章,还是先读文章再看题,其实优缺点都是有的。
C++是面向对象,C语言是面向过程。
但是,毕竟C++是从C语言发展过来的,关键在于C++是通过封装C而形成的。在实现角度来讲,C++底层是用C来实现的,一定程度而言,C++可以说就是C。在思想上,C++使用对象的思想来解决问题,C用过程的思想来解决问题。
举个例,C语言的指针,C++把它封装成句柄。也就是句柄的本质就是指针,对指针的封装,并添加一些额外的操作而形成句柄,这些额外的操作来实现对指针的保护,如防止能存泄漏等等C语言指针的弊端。
又如,C语言的结构体,跟C++的类,在内存的存储方式很相像的,具体就不描述了。
做个不是很恰当的比如,一条宝石项链,把宝石比喻成C,把整条项链比喻成C++。
说回正题,学完C++后再学C有关系吗?
如果你的初期目标只是学会C++的语法,并运用它,那么这是没多大关系的。
如果你后期想学精通C++,那么你就得好好学C,弄透C,明白是怎么通过把C封装成C++的,那么C++的本质你也清楚个七七八八了。当然,对于解决问题的思想另当别论。
据我所知,C++课本的前面章节都是在讲C的语法。所以我觉得也不用太在意这个问题。并且我了解到,如果学校以C++入门,那么一年的学习中,其中前半个学期学C,后半学期学C++。
总的来说,你避免不了先学C。
如果你已经有了别的面向对象语言的学习基础了,如Java。其实我觉得直接学习C++的障碍也不大。
我说的也是片面,你可参考。
其实其实,学就学吧,还在意这些干嘛,学不懂再回头看看。就如同我们读书时遇到的问题,语文做阅读题,是先读题目再读文章,还是先读文章再看题,其实优缺点都是有的。
展开全部
这样学习难度系数大点,一般用C打基础再学习C++比较容易点,基础也扎实点。当然并不是说开始就学C++有什么不对,当然学完后也没有必要去学C了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你如果C++学得很好(我只得“很好”是指C++所有的流、标准库函数、各种概念全部精通)如果是这样的话你就不必专门去学C了,因为C已经包含在你学的C++里了!你只需转换一下思路就可以了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你一点基础都没有建议你还是先从C开始学起,因为C是基础C++比C更高一层,当然如果你非常聪明,领悟能力非常好的话能学好C++那也可以,不过话有说回来如果你已经把C++学的很好了就没有必要再去学C了,因为C++已经包含了C,你地明白?对于这两者的区别可以看一下《达内C++教程》就非常明白了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-02-12
展开全部
看似有关系,其实你问的问题就跟问早饭给你一块蛋糕和一个鸡蛋,你是先吃鸡蛋还是先吃蛋糕一样,完全没关系~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询