2012-12-03 15 views
1

我想使用重載的運算符,但不知道如何使用/調用它在我的主要CPP。該代碼在另一個文件中,如下所示:使用重載的運算符[]

string postH::operator[](int add){ 
    if(add > 100) 
    {return "\nsome text\n";} 
    else {return "\nsome other text\n";} 
    } 
+6

這使我想知道爲什麼你沒有超載它在所有... – PlasmaHH

回答

4

您可以像使用普通數組索引一樣使用它。

postH foo; 
std::cout << foo[150]; 
+0

THX它的工作: )使它像這樣,只是不知道它需要在前面cout :) – JohnnnnnY

+0

@JánosBalázs它*不需要''cout'在前面。 – juanchopanza

1

運算符[]在大括號之間得到一個整數值。這就是爲什麼你應該在你的重載函數中給出一個參數。之後,你可以使用操作員像往常一樣:postHObj[10]
換句話說10是add
我認爲this將有助於

+0

我試過像這樣: post1 [felad1.getCS_Suly()]; (注意:felad1.getCS_Suly()給出了一個int) ,但這種方式不起作用。 //使它成爲thx :) – JohnnnnnY