免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2677 | 回复: 5
打印 上一主题 下一主题

请教一个简单的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-04-08 10:31 |只看该作者 |倒序浏览
我们总是这样写
main()
{
    ...
    vector<int>;  ab;
    ...
}

我从来没有这样写过

main()
{
    ...
    vector<int>;();
    ...
}
后面一种写法是表示什么呢?

即vector<int>;()表示什么

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
2 [报告]
发表于 2005-04-08 11:00 |只看该作者

请教一个简单的问题

原帖由 "yuonunix" 发表:
后面一种写法是表示什么呢?


表示
vector.cpp:3: error: invalid function declaration

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2005-04-08 11:02 |只看该作者

请教一个简单的问题

vector<int>;()表示返回vector<int>;型的函数吧?

论坛徽章:
0
4 [报告]
发表于 2005-04-08 11:26 |只看该作者

请教一个简单的问题

原帖由 "gvim" 发表:


表示
vector.cpp:3: error: invalid function declaration


肯定可以的呀,你编译下面的试试

#include <stdio.h>;
#include <vector>;
void main()
{
        std::vector<int>;();

       
}

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
5 [报告]
发表于 2005-04-08 11:49 |只看该作者

请教一个简单的问题

不好意思,刚才回答有点随意,直接把你的程序拷下来编译,没有加std::,所以出错了。
自寒一个先。

你那种用法是生成一个对象。
可以参考

  1. #include <iostream>;
  2. #include <vector>;
  3. using namespace std;
  4. int main()
  5. {
  6.         int b = int();
  7.         vector<int>; a = vector<int>;();
  8. }

  9. #include <iostream>;
  10. #include <vector>;
  11. using namespace std;
  12. int main()
  13. {
  14.         int b = int(3);
  15.         vector<int>; a = vector<int>;();
  16.         cout << b <<endl;
  17. }
复制代码


表示的是建立一个类的对象。如果只有 vector<int>;() 的话,那么生成的是临时的类对象。
另外注意:对于同样的动作,内建类(int)是什么行为,那么STL中的类(vector<int>也一定是什么行为。

论坛徽章:
0
6 [报告]
发表于 2005-04-08 11:59 |只看该作者

请教一个简单的问题

看来是跟new的那种形式差不多
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP