전문가를 위한 질문 #define - 페이지 3

 
Alexandr Andreev :


다들 이해가 가는듯...

이제 막 여행을 시작하는 분들을 위해....

여전히 stat 클래스로 래핑하고 나머지를 동일시하는 링크를 반환할 수 있습니다. 이 메소드는 if (a!=5) Print(a); 이것은 작동하지 않을 것입니다 . if (a!=5) {Print(a);}를 작성해야 합니다. 수업에서 이 순간을 수정할 수 있지만 게으름)) 그러나 일반적으로 모든 것이 역사 기록 보관소에 있는 것 같습니다.

클래스를 사용하여 정적 메서드를 통해 데이터를 초기화하고 print 호출을 연산자와 결합하는 방식 .... then if (a!=5) Print(a); , 작동합니다

그것은 모두 게으름에서 비롯된 것입니다. 도망쳤지만 골을 넣었다. 무언가를 줄였지만 합리적인 범위 내에서. 또한 인쇄, 파일 쓰기 는 데이터를 수집하거나 알고리즘을 설정하여 설정합니다. 그리고 미리 정의된 문자열을 인쇄에 넣으면 쉼표가 인쇄됩니다. 일반적으로 이 뇌는 물론 훈련을 하지만 경로조차 없는 것 같다.

 
Alexandr Andreev :



드미트리 페도세예프 :


블라디미르 시마코프 :


이 경우 질문을 할 수 있습니다. 정의는 컴파일러에 대한 함수를 호출하는 것과 다릅니다. 아무것도 없다는 결론에 이르렀다. 내가 잘못?

 
Valeriy Yastremskiy :

이 경우 질문을 할 수 있습니다. 정의는 컴파일러에 대한 함수를 호출하는 것과 다릅니다. 아무것도 없다는 결론에 이르렀다. 내가 잘못?

정의 - BEFORE 컴파일 중 대체, 모든 종류의 __LINE__이 정확히 원래대로 되므로 열등한 코드 조각으로 대체할 수 있습니다.

함수는 여러 언어로 코드에 대한 링크(goto)이고 다른 언어에서는 실행 파일 생성 중 코드 대체(모든 기능 확장)입니다.

음, 그리고 더 많은 부정은 아마도 악하기 때문입니다. 오류 검색을 복잡하게 하므로 오류가 없는 경우를 잘 정의합니다.
 
Alexandr Andreev :

정의 - BEFORE 컴파일 중 대체, 모든 종류의 __LINE__이 정확히 원래대로 되므로 열등한 코드 조각으로 대체할 수 있습니다.

함수는 여러 언어로 코드에 대한 링크(goto)이고 다른 언어에서는 실행 파일 생성 중 코드 대체(모든 기능 확장)입니다.

MKL에 대한 질문입니다. 루프를 제외하고 실행 파일에 goto가 없다는 것을 올바르게 이해합니다. 문제는 컴파일 기능에서 발생했습니다. 엄격하게 위에서 아래로. 그리고 루프 본문 맨 아래에 변수를 선언하고 루프 조건에서 호출하면 경고가 발생합니다. 위에서 아래로 출력 확인. 그리고 실행 파일은 goto 링크가 아닌 정의와 같은 기능 대체에 의해 형성됩니다.

 
Alexandr Andreev :

정의 - BEFORE 컴파일 중 대체, 모든 종류의 __LINE__이 정확히 원래대로 되므로 열등한 코드 조각으로 대체할 수 있습니다.

함수는 여러 언어로 코드에 대한 링크(goto)이고 다른 언어에서는 실행 파일 생성 중 코드 대체(모든 기능 확장)입니다.

즉, 대체는 컴파일 중 빌드 속도에만 영향을 줍니까?
그리고 대규모 프로젝트 의 조립에만 합리적입니까?
아니면 모든 동일한 zadefaynenyy 코드가 실행 파일에서 더 빠를까요?

 
Valeriy Yastremskiy :

MKL에 대한 질문입니다. 루프를 제외하고 실행 파일에 goto가 없다는 것을 올바르게 이해합니다. 문제는 컴파일 기능에서 발생했습니다. 엄격하게 위에서 아래로. 그리고 루프 본문 맨 아래에 변수를 선언하고 루프 조건에서 호출하면 경고가 발생합니다. 위에서 아래로 출력 확인. 그리고 실행 파일은 goto 링크가 아닌 정의와 같은 기능 대체에 의해 형성됩니다.

아니요, 2008년에 µl은 분명히 코드를 참조하는 방식을 사용했습니다.

전체 확장이 지금 사용되는지 여부는 여기에서 명확하지 않습니다.

이제 자신의 컴파일러를 작성하는 것은 컴퓨터 과학 학부의 3-4 과정입니다.

그리고 어딘가에 링크가 있고 일반적으로 공개하려는 사람이 누구든지 모든 것이 혼란 스럽습니다.

대부분 가능한 것은 배포하지만 전부는 아닙니다. for 등과 같은 문장은 분명합니다. 완전히 다른 이야기입니다.

 
Roman :

즉, 대체는 컴파일 중 빌드 속도에만 영향을 줍니까?
그리고 대규모 프로젝트를 구축하는 경우에만 합리적입니까?
아니면 모든 동일한 zadefaynenyy 코드가 실행 파일에서 더 빠를까요?

일반 기능을 배포하는 것은 당연합니다.

저것들. for (int i=0; i<ArraiSize(max); i++)

여기 ArraySize(최대); 펼치면 이 배열의 크기에 대한 주소와 같은 것으로 나타납니다(배열을 보면 변수에 크기가 있고 여기에서는 이 변수에 대한 "메모리의 주소" 대체가 발생합니다). 일반적으로 직접 변수로 변경하는 것은 의미가 없습니다.

  for (int i=0; i<ArraiSize(max); i++)

그리고

for (int i=0; i<크기; i++)  

이 경우 ArraySize(max)와 size는 배열 의 크기를 결정하는 타이밍이 동일합니다.

 
Alexandr Andreev :

아니요, 2008년에 µl은 분명히 코드를 참조하는 방식을 사용했습니다.

전체 확장이 지금 사용되는지 여부는 여기에서 명확하지 않습니다.

이제 자신의 컴파일러를 작성하는 것은 컴퓨터 과학 학부의 3-4 과정입니다.

그리고 어딘가에 링크가 있고 일반적으로 공개하려는 사람이 누구든지 모든 것이 혼란 스럽습니다.

대부분 가능한 것은 배포하지만 전부는 아닙니다. for 등과 같은 문장은 분명합니다. 완전히 다른 이야기입니다.

고맙습니다. 오류 및 버그의 끝없는 주제로 판단하면 최적화가 우리의 모든 것입니다 .... 글쎄, 빛으로 이끄는 악처럼))) 차가 움직이면 영원한 수리도 방법입니다)

 
Roman :

즉, 대체는 컴파일 중 빌드 속도에만 영향을 줍니까?
그리고 대규모 프로젝트를 구축하는 경우에만 합리적입니까?
아니면 모든 동일한 zadefaynenyy 코드가 실행 파일에서 더 빠를까요?

1 - 아마도 예, 하지만 마이크로초 동안 =)

2 - 오히려 그 반대 - 가장 짧은 정의와 최소값을 사용해야 합니다.

3 - 2008년에 이 진술은 µl4에 대해 사실이 될 것입니다. 하지만 이제 속도는 동일할 것입니다.

 
Alexandr Andreev :

일반 기능을 배포하는 것은 당연합니다.

저것들. for (int i=0; i<ArraiSize(max); i++)

여기 ArraySize(최대); 펼치면 이 배열의 크기에 대한 주소와 같은 것으로 나타납니다(배열을 보면 변수에 크기가 있고 여기에서는 이 변수에 대한 "메모리의 주소" 대체가 발생합니다). 일반적으로 직접 변수로 변경하는 것은 의미가 없습니다.

  for (int i=0; i<ArraiSize(max); i++)

그리고

for (int i=0; i<크기; i++)  

이 경우 ArraySize(max)와 size는 배열의 크기를 결정하는 타이밍이 동일합니다.

이 루프 예제에서는 타이밍에 대해 동의하지 않을 수 있습니다.
반대로 크기 변수에 결과를 가져와 조건에서 사용하는 것이 좋습니다.
ArraySize(max)에 대한 각 반복의 루프는 불필요한 언롤링을 수행하므로 루프 속도가 느려집니다.
즉, 어셈블리 코드의 추가 지침입니다.