【发布时间】:2011-06-19 07:09:20
【问题描述】:
我刚刚学习 C++,遇到了以下难题:
作为一个 C++ 新手,我读到使用引用而不是指针(如果可能)通常是一个好主意,所以我试图尽早养成这个习惯。结果,我有很多具有一般形式的方法
void myMethod(ParamClass const& param);
现在,我想知道调用这些方法的最佳方式是什么。当然,每次调用都需要一个不同的对象作为参数传递,据我所知,创建它的唯一方法是 new 运算符,所以现在我正在执行以下操作:
myObject.myMethod(*new ParamClass(...));
虽然这种方法完全有效,但我想知道是否没有另一种已经建立的“c++ 方式”可以做到这一点。
感谢您的帮助! 丹
【问题讨论】:
-
这样做,你正在泄漏内存,因为你永远不会在任何地方保存指针值。
-
这本书“使用 Qt 4 进行 C++ GUI 编程”有一个出色的附录,名为“Java 和 C# 程序员的 C++ 简介”。如果这就是你的背景,它可能会提供一个有效的“快速开始”来改变你在语言之间建立的一些模式。如果您不想购买这本书,大多数图书馆都可以使用 ILL 获得副本。 (不过,如果您正在考虑使用 Qt,请获取本书。
标签: c++ parameter-passing reference-type