3
저는 프로그래밍 중이며 C++ 클래스에서 이상한 동작을 발견했습니다. 그래서 나는 문자열을 포함하는 간단한 클래스를 만들었고 그 클래스의 생성자와 객체의 문자열을 출력하는 friend 메서드 (show)를 만들었습니다. 그러나 주 기능에서 볼 수 있듯이. 나는 방법 (쇼) 간단한 끈에 통과하고 작동한다. 메쏘드 매개 변수가 객체에 대한 참조라면 편리하다는 것을 알았지?클래스 메서드 및 인수 전달
#include <iostream>
using namespace std;
class lol
{
char * str;
public:
lol(const char * s);
friend void show(const lol & l);
};
lol::lol(const char * s) //assign string to object
{
str = new char[strlen(s)+1];
strcpy(str,s);
}
void show(const lol & l) //prints string from object
{
cout << l.str;
};
int main()
{
show("TEST"); //passing string but not an object
return 0;
};
감사합니다. 혼란 스러웠던 점은 참조와 함께 작동한다는 것입니다. 이제 나는 이해했다. –
@Kolontai : 좋아, 다행이다. :) –