2013-07-05 2 views
1

Я пишу игру; вместо того, чтобы полностью испортить мой код, мне бы очень хотелось сделать что-то подобное.C++ Передача параметра через класс?

Вот как мой код сейчас.

bool Verified[18] = { false }; // 18 for (18 clients in game) 

чем установить, что BOOL я, очевидно, сделать

for(int Client;Client<18;Client++) 
{ 
Verified[Client] = false; 
} 

То, что я хотел бы, чтобы на самом деле сделать это ниже.

static class Clients 
{ 
//Verified size is 18, for (18 clients max in game) 
bool Verified = the value sent by example below to client? 

//some functions i'd like to add later 
} 

То, что я хочу быть в состоянии сделать это ниже:

Clients[ClientIndex].Verified = false; 
Clients[ClientIndex].SomeFunction_Call(< This param same as ClientIndex); 

Я не знаю много C++ я знаю; Я провалился. Но любая помощь была бы потрясающей.

+0

std :: fill_n (проверено, 18, неверно); заполняется ложным –

+0

Почему статический класс? –

+0

@huseyin tugrul buyukisik У меня нет члена «Fill_n» и пытаюсь понять, что бы это сделало для меня: P. Я хотел бы сделать это в формате, который я предоставил для очистки и оптимизации кода. –

ответ

1

Во-первых, нет такой вещи, как класс static в C++. убери это.

Теперь после того, как вы определили класс (не забывайте, в конце класса)

class Client { 
public: 
    bool var; 
    void func (int i); 
}; 

Вам нужно создать массив (или вектор или что-нибудь)

Client clients[10]; 

то, вы можете использовать его как это:

for (int i=0; i<10; i++) { 
     clients[i].var = false; 
    } 

Или:

for (int i=0; i<10; i++) { 
     clients[i].func (i); 
    } 
+0

Я тебя люблю, я даже не пробовал этого, но теперь я это понимаю; большое спасибо. –

+0

подтверждения ответа будет достаточно, чтобы выразить свою любовь. –

+0

Ага, извините; не используйте этот сайт много, всегда нужно напомнить. Ответ первого парня был сухим. Могу ли я передать один параметр в функции внутри моего класса из индекса массива каким-то образом? void verify (int ClientIndex, статус char) клиентов [1] .Unverify ("status char"); // (1, "status char") –