방금 목표 C를 배우기 시작했고 .h 및 .m 파일이 서로 어떻게 상호 작용하는지 혼란스러워합니다..h 및 .m 파일이 객관적인 c에서 상호 작용하는 방법에 대한 간략한 설명은 무엇입니까?
Fraction.h
#import <Foundation/NSObject.h>
@interface Fraction : NSObject {
int numerator;
int denominator;
}
- (void) print;
- (void) setNumerator: (int) n;
- (void) setDenominator: (int) d;
- (int) numerator;
- (int) denominator;
@end
Fraction.m
#import "Fraction.h"
#import <stdio.h>
@implementation Fraction
-(void) print { printf("%i/%i", numerator, denominator); }
-(void) setNumerator: (int) n { numerator = n; }
-(void) setDenominator: (int) d { denominator = d; }
-(int) denominator { return denominator; }
-(int) numerator { return numerator; }
@end
Main.m 내가 이해에서
#import <stdio.h>
#import "Fraction.h"
int main(int argc, char *argv[]) {
Fraction *frac = [[Fraction alloc] init];
[frac setNumerator: 1];
[frac setDenominator: 3];
printf("The fraction is: ");
[frac print];
printf("\n");
[frac release];
return 0;
}
이 프로그램이 처음 시작 :이 간단한 프로그램은 3 개 파일이 main.m 파일을 실행합니다. 나는 기본적인 C 개념을 이해하지만이 전체 "클래스"와 "인스턴스"물건은 정말로 혼란 스럽다. Fraction.h 파일에서 @interface는 분자와 분모를 정수로 정의하지만 그 밖에도 (void)로 무엇을하고 있습니까? 아래에서 다시 정의 할 목적은 무엇입니까? 나는 또한 Fraction.m의 (void) 부분과 int (int) 부분에서 일어나는 일에 대해 매우 혼란 스럽다. 그리고 이것 모두가 main.m 파일에 함께 모이게된다. 내가 말하고자하는 것은 이것이 다른 부분들이 어떻게 작동 하는지를 배울 수있는 매우 쉬운 프로그램 인 것처럼 보인다는 것입니다. 누군가가 기술이 아닌 전문 용어로 설명 할 수 있을까요?