小编Tom*_*Tom的帖子

多次使用new和delete

我正在使用C++模拟两个玩家之间的传统纸牌游戏:我定义了一个"卡"结构

card sample;
cout << sample.numb << " of " << sample.suit << " ownded by player " << sample.own
Run Code Online (Sandbox Code Playgroud)

读取例如"10个黑桃由玩家2拥有".

我设置了一个矢量"牌组"(大小40)跟踪每张牌,并且我在游戏的每一步动态分配矢量"g1""g2"和"tab",以便处理玩家1的牌,玩家2的牌和牌桌上有三个分开的物体(这对于游戏本身来说是必要的).

由于玩家不断将卡片放在桌面上并获得/丢失新卡片,因此大小不断变化,所以每次我做这样的事情:

delete g1;
delete g2;
delete tab;
n1=count (1,deck);  // this counts how many cards in "deck" have .own field==1
n2=count (2,deck);  // this counts how many cards in "deck" have .own field==2
nt=count (0,deck);  // cards having .own field == 0 are on the table
g1 = new card [n1];
g2 = new card [n2];
tab = …
Run Code Online (Sandbox Code Playgroud)

c++ dynamic-memory-allocation delete-operator

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

PYTHON - 从文件中读取单行

我需要几个小时的python,我正在尝试编写一个脚本,它从一个文件(名为'peaks.dat')读取一组x,y坐标,并将它们填入一个列表(类类型); 我正在定义以下内容:

class point():
    def _init_(self,x=None,y=None,k=None,f=None):
        self.x=0    # x coordinate
        self.y=0    # y coordinate
        self.k=0    # I need these for later stuff
        self.f=-1   # I need these for later stuff
Run Code Online (Sandbox Code Playgroud)

但后来我找不到任何方法从文件中的一行(即,两列中只有一列中的元素)中"选取"单个元素,而不是整行.有这样的事吗?

无论如何,我尝试将我的列分成两个不同的文件x.dat和y.dat,但后来我不知道如何从文件中单独填充我的'point'类型列表的x和y字段.我试过了

f=open('x.dat','r')
mylist=[]
for line in f:
    mylist.append(point(line, , , )) # wrong syntax D:
f.close()

for data in mylist:
    print i.x
Run Code Online (Sandbox Code Playgroud)

计划在y.dat文件中稍后使用,但在许多级别上似乎都是错误的.

ps我来自一些C++,如果你想举例.

编辑:peaks.dat只是三列(我只需要前两个)数字,类似于

1.2   1.6   0.4
1.5   2.1   0.3
1.1   1.0   0.5
Run Code Online (Sandbox Code Playgroud)

等等

x.dat(或y.dat)是一行数字.

python io

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