은 내가 매개 변수 2.4
가 출력 내 프로그램을 실행하면 원내 프로그램이 어떤 인수에도 반응하지 않는 이유는 무엇입니까?
#include <iostream>
#include <stdlib.h>
#include "circle.h" // contains the Circle class
using namespace std;
void print_circle_attributes(float r) {
Circle* c = new Circle(r);
cout << "radius: " << c->get_radius() << endl;
cout << "diameter: " << c->get_diameter() << endl;
cout << "area: " << c->get_area() << endl;
cout << "circumference: " << c->get_circumference() << endl;
cout << endl;
delete c;
}
int main(int argc, const char* argv[]) {
float input = atof(argv[0]);
print_circle_attributes(input);
return 0;
}
의 속성을 출력 C++에서 간단한 테스트 프로그램을 가지고 : 나는 이전에 프로그램을 테스트 한
radius: 0.0
diameter: 0.0
area: 0.0
circumference: 0.0
매개 변수없이 간단히 정적 값을 사용하면 괜찮습니다. 그래서 나는 내가 만든 수업에 아무런 문제가 없다는 것을 알고 있습니다 ...
그래서 내가 뭘 잘못 했습니까?
그와 같이'new'를 사용하도록 가르쳐주십시오. 무시하십시오. 'Circle c (r);'을 쓰고,'new'도,'delete'도, 포인터도 없습니다. 마법! –
아, 여기 [좋은 학습 자료가 있습니다] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). –
스택에 오버플로가 일어나지 않으므로 힙에 객체를 만들고 싶었 기 때문에 특별히 새 키워드를 사용합니다 (하나의 객체가 아무것도하지 않지만 여전히 그렇습니다). –