我有一个DB类,它有几个方法,通常我是这样使用它们的:
QSqlQuery DB::myfunc(){
QSqlQuery query;
...
return query;
}
我意识到我正在所有方法中创建一个QSqlQuery
对象,所以我在header中将其创建为私有成员,并希望在所有方法中使用相同的query
变量。
'QSqlQuery' is deprecated: QSqlQuery is not meant to be copied. Use move construction instead.
:30:5: note: 'QSqlQuery' has been explicitly marked deprecated here
警告当我这样做的时候。如果我这样使用它有什么问题吗?
每次在方法中创建QSqlQuery变量时不会发出任何警告。
1条答案
按热度按时间g0czyy6m1#
显然,类并没有被弃用,但是它的复制构造函数被弃用了。
您要做的是移动对象,而不是复制对象,如下所示: