小编tom*_*012的帖子

C++选择要排序的属性

假设我有一个具有三个属性的类Car,所有属性都是inttype:year,modelNo和topSpeed.

我有一个汽车列表,以及一个对此列表进行排序的函数.该方法目前通过car.modelNo对汽车进行分类.

如果我想要按年份,modelNo或topSpeed排序,我可以制作三种不同的方法sortByYear,sortByModelNo等等.

有没有办法可以实现一个排序方法,而只是传递它想要排序的属性的名称?所以我可以打电话给sortCars(carsList, modelNo); OrsortCars(carsList, year);

这些属性中的每一个都将始终为int,并且列表将仅包含Car对象.

c++ methods object

1
推荐指数
1
解决办法
44
查看次数

“嵌套”导入语句对 Python 性能的影响

我有一个使用 twitter api 分布在 2 个文件中的程序。有一个文件专用于发送和读取推文,因此我已将“导入 twitter”行放入该文件中。第二个文件有一个导入语句来导入这个基于 twitter 的文件,并将从该文件调用“read”和“post”函数。

这是代码的要点:

文件一:

import file2
file2.post(some text)
Run Code Online (Sandbox Code Playgroud)

文件2:

import twitter
api = twitter.Api(...)
def post(text):    
    api.PostUpdate()
Run Code Online (Sandbox Code Playgroud)

这工作正常并且完全按照我的预期运行,但我不确定这是否是运行此程序的最有效的方式(从性能角度来看)。每次调用文件 2 时都会运行“import twitter”行并用重复的导入填满内存和时间吗?如果是这样,我会更好地这样做:

文件一:

import twitter
import file2
api = twitter.Api(...)
file2.post(some text, api)
Run Code Online (Sandbox Code Playgroud)

文件2:

def post(text, api):
    api.PostUpdate(text)
Run Code Online (Sandbox Code Playgroud)

api 对象在文件之间传递的位置。

谢谢

python performance module

-1
推荐指数
1
解决办法
254
查看次数

C++(x == 1)与(x&1)相同

我最近看到了一个有人使用的开源程序

if (x & 1){
Run Code Online (Sandbox Code Playgroud)

其中x是int.我自己试了一下,据我所知,这与我们使用的效果相同

if (x == 1){
Run Code Online (Sandbox Code Playgroud)

据我所知,该&符号用于引用对象,但在这里它似乎被用作等于运算符.

我错误地认为这些是同一件事吗?或者有不同的理由使用每一个?

c++

-5
推荐指数
1
解决办法
140
查看次数

标签 统计

c++ ×2

methods ×1

module ×1

object ×1

performance ×1

python ×1