속성 C++ 포인터 .. 내가이 라이브러리 코드에 대한 혼란 스러워요
속성 이름에 포인터를 작성하는 목적은 무엇인가
? 문자열 * 이름과 같습니다.#include <iostream>
using namespace std;
class stringlist
{
private:
int numstrings;
string *strings;
public:
stringlist() : numstrings(0), strings(NULL)
{}
// copy constructor
stringlist(const stringlist &other) :
numstrings(other.numstrings),
strings(new string[other.numstrings]) {
for (int i=0; i<numstrings; i++) {
strings[i] = other.strings[i];
}
}
// destructor
~stringlist() {
if (numstrings > 0) delete [] strings;
}
void printStrings();
const string& getString(int num);
void setString(int num,
const char *astring);
void setString(int num,
const string &astring);
int getNumstrings() {
return numstrings;
}
void setNumstrings(int num);
void swapStrings(stringlist &other) ;
// overloaded operators
stringlist& operator =
(const stringlist &other) {
stringlist temp(other);
swapStrings(temp);
return *this;
}
};
사람이 string *strings
대신 string strings
를 사용 의 목적은 무엇인가 설명해주십시오 수 :
이
코드인가?감사합니다.
은 문자열의 배열입니다. – Barmar
코드 작성자는'std :: vector>'에 대해 들어 보지 못했습니다. –
juanchopanza