我编写了一个类Point
的以下成员函数 double &Function(){
double d=33.66;
double *p=new double;
p=&d;
return *p;
}
使用Point对象" pt"在main()中调用as,pt.Function()。这有效,虽然我不太明白为什么?可以改进吗?我知道这不是获得" d"的最佳方式。但我用它来学习如何使用引用传递值。谢谢你的帮助。
答案 0 :(得分:0)
WebDriverWait wait1 = new WebDriverWait(utils.driver, 30);
WebElement element = wait1.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("input[type='file']")));
element.sendKeys("C:\\Users\\....\\Desktop\\TestImage.png");
在这里,它只是创建一个 memory leak 。你永远不会在这个程序实例中使用那个分配的内存。
答案 1 :(得分:0)
您不需要返回POD(Plain Old Data)局部变量的值,在您的情况下通过引用d。您只需按值返回即可。
您需要通过引用返回某些内容的可能方案是,当该值是您的类的成员时,您需要从其他位置修改它。
示例:
// Declaration
class Point {
private:
double _d = 33.66;
public:
double& getD() { return _d; }
}
// Usage
Point p;
p.getD() = 66.33;