1

currencyConverter.cpp 自体でこの関数 stringToUpper(str2) を呼び出すと、動作して大文字が返されます。

void currencyConverter::stringToUpper(string &s)
{
   for(unsigned int l = 0; l < s.length(); l++)
  {
    s[l] = toupper(s[l]);
  }
}

ただし、という名前のファイルがunitTest.cppあり、これは次のことを行います。

#include "unitTest.h"
#include "currencyConverter.h"

CPPUNIT_TEST_SUITE_REGISTRATION(unitTest);


unitTest::unitTest() {
}

unitTest::~unitTest() {
}

void unitTest::setUp() {
}

void unitTest::tearDown() {
}

void stringToUpper(string&);
void unitTest::testStringLowerToUpper()
{
string str = "ILOVECPLUSPLUS";
string str2 = "ilovecplusplus";

cout << "\nChecking if string 1 '" << str << "' equals string 2 '" << str2 << "'";
CPPUNIT_ASSERT_EQUAL(str,str2);

//this part i will use my stringToUpperFunction to test.
currencyConverter c;
c.stringToUpper(str2);

cout << str2 << endl;
}

を印刷しようとすると、大文字ではなく のstr2ままです。ilovecplusplus

コードまたは呼び出しの何が問題になっていますか?

4

0 に答える 0