易截截图软件、单文件、免安装、纯绿色、仅160KB

JAVA过度过来,问个c++的问题 - C/C++ / C++ 语言

以前在java可以这么写


addRow(new Row(chaList)); //addRow是一个方法,charList是生成Row的参数

本来这样在java是没任何问题的,到c++之后 会在new下面画一个波浪线,说是有错。


请问

在c++中可以有类似的用法吗?如果是语法的问题请纠正。
C++中不用这样写的,addRow是个函数,Row是个函数,chaList是Row参数
addRow(Row(chaList));这样就行了


不行,抛开语法,就语言特性上来说,c++没有垃圾自动回收,你new出来的对象又不传给一个变量,那如何销毁?

Row *row=new Row(chaList))
addRow(row);

addRow的参数必须是Row*类型,而且需要注意自己释放内存。java是自动回收的。

C++ 要求向前声明

没有函数原型和实现,谈这个函数没有答案

引用

Row *row=new Row(chaList))
addRow(row);

addRow的参数必须是Row*类型,而且需要注意自己释放内存。java是自动回收的。



这样生成的object如何垃圾回收?

是不是有class 的destructor就可以了?


这其实就是为什么java中的new ClassA(new ClassB(new ClassC(new (ClassD))));这种装饰器模式的实现,如果C++中用就会感觉蛋疼的原因

引用
引用 4 楼 cattycat 的回复:

Row *row=new Row(chaList))
addRow(row);

addRow的参数必须是Row*类型,而且需要注意自己释放内存。java是自动回收的。



这样生成的object如何垃圾回收?

是不是有class 的destructor就可以了?

栈内存(不用ne


相关问答:

java日期处理 - Java / Java SE

当知道一个日期,如何把这个日期所在旬的前后两个日期取出
比如输入20090905,就输入20090901 20090910
输出20090901 20090910

取得天数后作一下判断再把这个方法用下void set(int field, int value)  
......

C/S项目架构设计----求助 - Java / Java SE

本人正在用Java做一个C/S架构的项目, 
可是由于项目比较大,前期对架构的设计尤其重要,因为后期可能随时会加个功能或者去掉某些功能。 
所以特地寻求如何设计C/S的架构使程序更加面向对象更加易于维 ......

java socket email 问题 - Java / Java SE

我在 java核心技术上 看了一个 利用 Java socket email的例子 可是怎么也 不成功 为什么?
源码
Java code:

package cn.com.test.email;
import java.awt.GridBagLayout;
import java.awt.event.Action ......

JavaScript函数一个很奇怪的问题 - Java / Java EE

在JSP页面有一个<input type="hidden" name="index" value="0">/>控件
当我用下面的JavaScript函数改变其value的值的时候 如果满足条件(即i>=3的时候)为什么value的 ......

java windows7 MSSQL - Java / Java SE

使用java在windows7 32位下连接MSSQL。
两台机器,windows7 32位,在控制面板里面全部设置语言和区域选项都english-unitedstates
唯一区别只有在安装SQL server 2008的时候 选择的字符集不一样,
exec sp_helpsor ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号