All pastes #916910 Raw Edit

Nick P

public cpp v1 · immutable
#916910 ·published 2008-02-25 00:22 UTC
rendered paste body
// includes, etcclass WordGenerator {  public:    // Constructor, etc;    void setRandWord();    void setBlankWord();    void newWord();    // Accessors, etc  private:    // Other member variables, etc    std::string m_randWord;    std::string m_blankWord;;};WordGenerator::WordGenerator( // parameters ) {  std::srand( std::time(NULL) );  // Code to initialize variables and vectors, etc  WordGenerator::setRandWord();  WordGenerator::setBlankWord();}void WordGenerator::setRandWord() {  m_randWord = m_dictionaryVector[ std::rand() % m_dictionaryVector.size() ];}void WordGenerator::setBlankWord() {  std::string blankStr( m_randWord.length(), '_' );  m_blankWord = blankStr;}void WordGenerator::newWord() {  setRandWord();  setBlankWord();}// Other declarations, etc/*  I'm asking which is best? When I call newWord(), is it possible that something happens between  the execution of setRandWord() and setBlankWord() that would cause a mismatch? It is better to do something like this:  void WordGenerator::newWord() {    m_randWord = m_dictionaryVector[ std::rand() % m_dictionaryVector.size() ];    std::string blankStr( m_randWord.length(), '_' );    m_blankWord = blankStr;  }  Then just call newWord() in the constructor? I can't imagine a situation where I would call setRandWord() without needing to call setBlankWord().*/