加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 这一行发生了什么:istringstream是(line);

发布时间:2020-12-16 09:22:55 所属栏目:百科 来源:网络整理
导读:正在阅读此解决方案: https://stackoverflow.com/a/42654357/8408220 (对于“如何读取整数直到行尾?”的问题) 我不明白这条线在做什么: istringstream is( line ); 我知道istringstream是一个类,但是什么是“是”部分? 它是这样做的: istringstream is
正在阅读此解决方案:

https://stackoverflow.com/a/42654357/8408220

(对于“如何读取整数直到行尾?”的问题)

我不明白这条线在做什么:

istringstream is( line );

我知道istringstream是一个类,但是什么是“是”部分?

它是这样做的:

istringstream is = new istringstream(line);

解决方法

istringstream is( line );

是一个自动分配的istringstream的定义,命名是用行的内容初始化的.

istringstream is = new istringstream(line);

不会编译. new动态分配和构造一个新对象并返回一个指向它的指针.您只能指定指针指针.你可以

istringstream * is = new istringstream(line);

而make是指向istringstream的指针,但现在你必须处理动态分配的管理.确保你

delete is;

当你不再需要它时.

也就是说,更喜欢自动分配,并在进入动态路线之前给予Why should C++ programmers minimize use of ‘new’?读数.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读