四香油饼 发表于 11-11-2009 12:06:49

请教个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:19

get a book and learn the generic and template syntax first.

原帖由 四香油饼 于 11-11-2009 12:06 发表 http://www.freeoz.org/bbs/images/common/back.gif
#include
#include
#include
#include
using namespace std;

int main() {
vector v;


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

四香油饼 发表于 11-11-2009 12:37:16

多谢指点

coredump 发表于 11-11-2009 12:39:04

read C++ Primer first.

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

fishyoyo 发表于 11-11-2009 12:49:42

c++中的模板 (Standard Template Library), vector 是模板库中的一个类

四香油饼 发表于 11-11-2009 13:07:52

恩,当初觉得模板没啥用,把这一章给跳过去了,我要好好学习:s2

kaile 发表于 11-11-2009 15:56:40

模板实在太重要了,复杂一点的数据结构都需要它

mengyh01 发表于 11-11-2009 16:29:49

回复 #7 kaile 的帖子

完全同意。

key 发表于 11-11-2009 16:31:52

Essential C++ is much better for Uncle Bing, I think.
C++ Primer is just toooooooooooooooooooooooooooooooooooooooooooo thick.

原帖由 coredump 于 11-11-2009 12:39 发表 http://www.freeoz.org/bbs/images/common/back.gif
read C++ Primer first.

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

四香油饼 发表于 11-11-2009 16:43:14

原帖由 key 于 11-11-2009 16:31 发表 http://www.freeoz.org/bbs/images/common/back.gif
Essential C++ is much better for Uncle Bing, I think.
C++ Primer is just toooooooooooooooooooooooooooooooooooooooooooo thick.




都太高深了。我原来买的是谭浩强的。现在想复习一下,看的是网上下载的thinking in c++, 是不是都太小儿科了,俺都不好意思说了:$

蒙面超人 发表于 11-11-2009 17:20:27

原帖由 key 于 11-11-2009 13:31 发表 http://cn.freeoz.org/bbs/images/common/back.gif
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:13

谭浩强的书是C程序设计吧,只是讲C语言的

ubuntuhk 发表于 11-11-2009 21:00:21

回复 #1 四香油饼 的帖子

我建议可以先学习STL,Vector、String这些都在里面了。

模板好复杂俺也不懂地说:$ :$

ubuntuhk 发表于 11-11-2009 21:00:40

PS,炳叔节日快乐:lol :lol :lol

flyspirit 发表于 11-11-2009 21:13:37

LZ是学C++是打算做什么方向的编程?

四香油饼 发表于 11-11-2009 21:54:42

原帖由 kaile 于 11-11-2009 18:18 发表 http://www.freeoz.org/bbs/images/common/back.gif
谭浩强的书是C程序设计吧,只是讲C语言的

他也出了c++的书

四香油饼 发表于 11-11-2009 22:14:31

原帖由 flyspirit 于 11-11-2009 21:13 发表 http://www.freeoz.org/bbs/images/common/back.gif
LZ是学C++是打算做什么方向的编程?

其实目的特简单,我想做些硬件,比如usb接口的设备啥的,自己不会编pc机软件,比较不方便,所以想学学。不想弄太高深的,就一般的小软件。另外还想学学嵌入式linux,要是做应用程序,也能用上。

nnoz 发表于 13-11-2009 23:15:24

http://www.csdn.net/
应该是国内最大的程序员社区。不知道楼主去过没有?

四香油饼 发表于 13-11-2009 23:41:29

原帖由 nnoz 于 13-11-2009 23:15 发表 http://www.freeoz.org/bbs/images/common/back.gif
http://www.csdn.net/
应该是国内最大的程序员社区。不知道楼主去过没有?

我刚刚注册了个帐号,下载了那个thinking in c++,其它的没看过。我现在的水瓶还太臭,不如闷头学习。

lavahx 发表于 13-11-2009 23:55:27

除非有特殊需求,否则应该学习java或c#

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

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

四香油饼 发表于 14-11-2009 00:24:22

原帖由 lavahx 于 13-11-2009 23:55 发表 http://www.freeoz.org/bbs/images/common/back.gif
除非有特殊需求,否则应该学习java或c#

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

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

我平时用c,而且想在linux平台多学习些,所以觉得还是c++更适合我学。

dover 发表于 14-11-2009 09:37:28

vector<string> v;
vector 是向量的C++实现,向量元素类型可以是已有的C++数据类型或自定义类型(多数据类型由模板关现)。vector 在实际运用中非常方便,向量中的元素可以任意增加和删除,一般不用人为控制内存释放,除非用到指针。这一点上比一般的数组有很大优势。缺点是速度比较慢,内存占用大。
页: [1]
查看完整版本: 请教个c++初级问题