Tom
Tom

Reputation: 802

Multidimensional Arrays Ambiguous Reference to Members

The following code used to work, but now when I try and use the code I'm getting an error stating, "Ambiguous reference to member 'append'". Any ideas?

var allInfo: Array = [[String]]()

let Dogs : Array = ["Border Collie","Doberman", "German Shepherd"]

let Cats : Array = ["Top Cat","Tom"]

allInfo.append(Dogs)
allInfo.append(Cats)

I've changed the name of the allInfo variable to myPets to see if it that was the problem and updated to Xcode 7.1.1 but still getting the following error. Although it works in playground. Very frustrating.

enter image description here

Upvotes: 1

Views: 846

Answers (2)

Tom
Tom

Reputation: 802

Thanks for all the support. I got this working by explicitly adding the type of each array as follows:

let Dogs : Array<String> = ["Border Collie","Dobermann", "German Shepherd"]

And I had to remove the : Array from my multidimensional arrays like so:

var myPets = [[String]]()

I don't know if this is an Xcode bug but hopefully my answer may help others in our community.

image of screen output

Upvotes: 1

Mundi
Mundi

Reputation: 80265

You most likely have a different definition of either the allInfo variable or the elements you are adding. Make sure you do not have duplicates of those.

Upvotes: 0

Related Questions