파이썬에서 시작하여 C++로 시작하려고하지만 C++에서 클래스 매개 변수에 액세스하는 방법을 알 수 없습니다. 필자는 3 개의 C++ 파일뿐만 아니라 Python 예제 클래스를 첨부했습니다.클래스 메서드에서 생성자 매개 변수에 액세스합니다.
이 파이썬의 경우 :
class Greeting:
def __init__(self, name):
self.name = name
def say_name(self):
return "Hello, %s" % self.name
가 무엇 say_name
방법에 self.name
인스턴스 PARAM에 액세스 할 수있는 C++ 해당하는 것입니까?
오른쪽 지금 내가 무엇을 가지고 :
greeting.hpp
class greeting
{
public:
greeting(std::string name);
~greeting();
std::string salutation(std::string salutation);
private:
// Nothing
};
greeting.cpp
#include "greeting.hpp"
greeting::greeting(std::string name, std::string nationality)
{
std::cout << "greeting class constructed\n";
}
greeting::~greeting()
{
}
std::string greeting::salutation(std::string salutation)
{
std::string res = salutation + ", " + name;
return res;
}
MAIN.CPP
#include <iostream>
#include "greeting.hpp"
int main(int argc, const char * argv[]) {
greeting obj = greeting("Rashad", "American");
std::string word = "Hello";
std::cout << obj.salutation(word) << std::endl;
return 0;
}
name
매개 변수 greeting::salutation
메서드에있는 매개 변수에 액세스 할 수 없으므로 분명히 실행되지 않습니다. 그래서 누군가가 어떻게/내가 위의 파이썬 예제와 비슷한 클래스 메소드에서 C++ 생성자 params에 액세스 할 수 있는지 설명 할 수 있습니까? 내가 엑스 코드에 ++ 8. 감사 .HPP에서
기본 C++을 공부하는 것이 훨씬 쉽고 생산적 일 것입니다. 또한 파이썬과 C++ 사이에는 직접적인 동일한 기능이 없을 수도 있음을 명심하십시오. – juanchopanza
C++에서는 변수 (매개 변수 또는 기타)에 대해 함수에 대해 동일한 이름을 사용하는 것이 일반적입니다. –