class
MAP[G]
create
make
feature --attributes
g_array: ARRAY[G]
size:INTEGER
feature{NONE}
make
do
g_array.make_empty
size:=0
end
class
MAP_TESTING
m: MAP[INTEGER]
create m.make
print(m.size)
第一类由数组及其大小组成。当我尝试创建ARRAY的m
对象时,当我放置print(m.size)
时似乎没有任何内容打印出来。我是否正确地实例化了数组?我是否为make
使用了正确的ARRAY
函数?为什么不打印任何东西?
class
MAP[G]
create
make
feature --attributes
g_array: ARRAY[G]
size:INTEGER
feature{NONE}
make
--I left this blank
end
class
MAP_TESTING
m: MAP[INTEGER]
create m.make
print(m.size)
当我离开make
空白时,这实际上有效。它打印出0
。但这并不好,因为很明显,如果我使用MAP
中的数组调用其他函数,它将无效。我实际上尝试过使用ARRAY类中的其他函数,但是我遇到了编译错误。
答案 0 :(得分:2)
在MAP
中创建数组的行应为:
create g_array.make_empty
MAP_TESTING
应该是:
class
MAP_TESTING
creation
make
feature
m: MAP[INTEGER]
make
do
create m.make
print(m.size)
end
end
(请注意,print
不会输出换行符,因此终端中的零容易丢失。)