Я пытаюсь сделать блэкджек в цели C, и у меня проблемы с передачей предметов вокруг. Класс My Hand в основном берет колоду и вытягивает из нее карты, добавляя их в массив.
Вот методы Hand, используемые:
- (id)init : (Deck*) deck
{
[self draw: deck];
[self draw: deck];
return self;
}
- (void)draw: (Deck*)deck;
{
Card* C= [deck drawFromDeck];
[cards addObject: C];
}
Вот проблемная часть основного:
Deck* deck=[[Deck alloc] init];
Hand* hand=[[Hand alloc] init: deck ];
Вторая строка получает ошибку «целое число из указателя без приведения». Всякий раз, когда я запускаю код, в руке никогда не бывает карт, потому что нет колоды, из которой можно взять (я думаю :)). Нужно ли проходить или анализировать колоду * по-другому? (если вам нужно, чтобы я отправил больше кода, просто спросите)
Спасибо, ребята! : D
Редактировать в отношении щедрости : Хотя я действительно считаю, что ответ, который я принял, хорошо объяснен, и этот вопрос получил в среднем более 17 просмотров в день за прошедший год с половиной. Это означает, что этот вопрос, вероятно, является первым опытом, который многие люди испытывают с помощью stackoverflow , и его улучшение не только покажет нам лучшее качество, но и, вероятно, сэкономит много времени людям. Хотя сейчас у него есть хорошие ответы, я хочу убедиться, что он настолько совершенен, насколько это возможно, особенно потому, что мы на самом деле не знаем, сколько из этих людей смогли последовать ему и решить свою проблему.
Продолжайте вносить изменения в существующие ответы или добавлять свои собственные. (Моды, как вы думаете, это будет хорошим кандидатом в вики сообщества?)