FreeOZ论坛

标题: 请教个c++初级问题 [打印本页]

作者: 四香油饼    时间: 11-11-2009 12:06
标题: 请教个c++初级问题
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main() {
vector<string> v;


上面这个段代码里面,最后一句 vector<string> v;
这个vector<> 是什么语法啊?俺理解应该是建立一个对象v, 类型是vector, 这个<string>好像没见过这样的写法,哪位老师帮我讲讲?
作者: key    时间: 11-11-2009 12:11
get a book and learn the generic and template syntax first.

原帖由 四香油饼 于 11-11-2009 12:06 发表
#include
#include
#include
#include
using namespace std;

int main() {
vector v;


上面这个段代码里面,最后一句 vector v;
这个vector 是什么语法啊?俺理解应该是建立一个对象v, 类型是vecto ...

作者: 四香油饼    时间: 11-11-2009 12:37
多谢指点
作者: coredump    时间: 11-11-2009 12:39
read C++ Primer first.

简单说,vector就是数组,但是这个数组是可以包含任意个任意类型地成员地,vector<string>表示建立一个数组,这个数组保存string类型地成员。
作者: fishyoyo    时间: 11-11-2009 12:49
c++中的模板 (Standard Template Library), vector 是模板库中的一个类
作者: 四香油饼    时间: 11-11-2009 13:07
恩,当初觉得模板没啥用,把这一章给跳过去了,我要好好学习
作者: kaile    时间: 11-11-2009 15:56
模板实在太重要了,复杂一点的数据结构都需要它
作者: mengyh01    时间: 11-11-2009 16:29
标题: 回复 #7 kaile 的帖子
完全同意。
作者: key    时间: 11-11-2009 16:31
Essential C++ is much better for Uncle Bing, I think.
C++ Primer is just toooooooooooooooooooooooooooooooooooooooooooo thick.

原帖由 coredump 于 11-11-2009 12:39 发表
read C++ Primer first.

简单说,vector就是数组,但是这个数组是可以包含任意个任意类型地成员地,vector表示建立一个数组,这个数组保存string类型地成员。

作者: 四香油饼    时间: 11-11-2009 16:43
原帖由 key 于 11-11-2009 16:31 发表
Essential C++ is much better for Uncle Bing, I think.
C++ Primer is just toooooooooooooooooooooooooooooooooooooooooooo thick.




都太高深了。我原来买的是谭浩强的。现在想复习一下,看的是网上下载的thinking in c++, 是不是都太小儿科了,俺都不好意思说了
作者: 蒙面超人    时间: 11-11-2009 17:20
原帖由 key 于 11-11-2009 13:31 发表
Essential C++ is much better for Uncle Bing, I think.
C++ Primer is just toooooooooooooooooooooooooooooooooooooooooooo thick.




是啊是啊。。。。看了primer plus 1个月了,才看了100页。。当然,每天都几乎从第一页开始看起
作者: kaile    时间: 11-11-2009 18:18
谭浩强的书是C程序设计吧,只是讲C语言的
作者: ubuntuhk    时间: 11-11-2009 21:00
标题: 回复 #1 四香油饼 的帖子
我建议可以先学习STL,Vector、String这些都在里面了。

模板好复杂俺也不懂地说
作者: ubuntuhk    时间: 11-11-2009 21:00
PS,炳叔节日快乐
作者: flyspirit    时间: 11-11-2009 21:13
LZ是学C++是打算做什么方向的编程?
作者: 四香油饼    时间: 11-11-2009 21:54
原帖由 kaile 于 11-11-2009 18:18 发表
谭浩强的书是C程序设计吧,只是讲C语言的


他也出了c++的书
作者: 四香油饼    时间: 11-11-2009 22:14
原帖由 flyspirit 于 11-11-2009 21:13 发表
LZ是学C++是打算做什么方向的编程?


其实目的特简单,我想做些硬件,比如usb接口的设备啥的,自己不会编pc机软件,比较不方便,所以想学学。不想弄太高深的,就一般的小软件。另外还想学学嵌入式linux,要是做应用程序,也能用上。
作者: nnoz    时间: 13-11-2009 23:15
http://www.csdn.net/
应该是国内最大的程序员社区。不知道楼主去过没有?
作者: 四香油饼    时间: 13-11-2009 23:41
原帖由 nnoz 于 13-11-2009 23:15 发表
http://www.csdn.net/
应该是国内最大的程序员社区。不知道楼主去过没有?


我刚刚注册了个帐号,下载了那个thinking in c++,其它的没看过。我现在的水瓶还太臭,不如闷头学习。
作者: lavahx    时间: 13-11-2009 23:55
除非有特殊需求,否则应该学习java或c#

因为c++会使你陷入大量的语言细节,容易忽略一些OOP的思想而且无论学习时间或成本都比这2个高。

从找工作的角度就更应该学后者了,去seek上看看需求就知道了。
作者: 四香油饼    时间: 14-11-2009 00:24
原帖由 lavahx 于 13-11-2009 23:55 发表
除非有特殊需求,否则应该学习java或c#

因为c++会使你陷入大量的语言细节,容易忽略一些OOP的思想而且无论学习时间或成本都比这2个高。

从找工作的角度就更应该学后者了,去seek上看看需求就知道了。


我平时用c,而且想在linux平台多学习些,所以觉得还是c++更适合我学。
作者: dover    时间: 14-11-2009 09:37
vector<string> v;
vector 是向量的C++实现,向量元素类型可以是已有的C++数据类型或自定义类型(多数据类型由模板关现)。vector 在实际运用中非常方便,向量中的元素可以任意增加和删除,一般不用人为控制内存释放,除非用到指针。这一点上比一般的数组有很大优势。缺点是速度比较慢,内存占用大。




欢迎光临 FreeOZ论坛 (https://www.freeoz.org/ibbs/) Powered by Discuz! X3.2