dll에서 함수를 가져오는 문제를 이해하는 데 도움이 됩니다. - 페이지 8

 

나는 Google을 읽었고 stdafx.h에 대해 알게 된 것 같습니다 :-))

음... 예... 살고 배우세요... :-)

 

예 예.

종종 첫 번째 링크에는 필요한 모든 것이 포함되어 있습니다.

 

흥미롭습니다... 그리고 Builder 6에서는 아무도 stdafx.h 파일에 대해 욕설을 하지 않습니다. 경고는 17개에 불과하고 파일 무게는 2배 적습니다.

음...네...

이제 언뜻보기에 2 개의 작업 라이브러리가 있습니다 :-). 그들이 데이터로 작업할 때 확인하겠습니다. 긍정적인 결과가 있기를 진심으로 바랍니다 :-)))

 
jartmailru писал(а) >>

음... 음, 말하자면 모든 파일을 프로젝트에 넣어야 합니다.

당신이 나에게 보낸 것.

.

솔직히 말해서, 나는 그것에 대해 생각조차하지 않았을 것입니다.

*라이브러리*에 포함된 파일 세트 중 *하나의 파일*,

프로젝트에 추가해야 합니다.

나는 그것들이 h-files를 통해 자동으로 체인으로 당겨진다고 생각했습니다. 처음에는 svd.cpp 파일만 사용하여 컴파일하고 링크했는데 extern을 추가할 때까지 오류가 없었습니다. svd.cpp에는 h 파일에 대한 링크가 있으며 다른 h 파일에 대한 링크가 포함되어 있으며 동일한 이름의 cpp 파일을 사용합니다. 내가 보기에 모든 것이 논리적으로 보입니다. 내가 완전히 바보라는 생각을하지 않도록 약간의 정당화를 원합니다 :-)). 그런 의견이 당신에 관한 것이라면 부끄러운 일입니다 :-)). 농담 :-))

 
boysn >> :

나는 그것들이 h-files를 통해 자동으로 체인으로 당겨진다고 생각했습니다. 처음에는 svd.cpp 파일만 사용하여 컴파일하고 링크했는데 extern을 추가할 때까지 오류가 없었습니다. svd.cpp에는 h 파일에 대한 링크가 있으며 다른 h 파일에 대한 링크가 포함되어 있으며 동일한 이름의 cpp 파일을 사용합니다. 내가 보기에 모든 것이 논리적인 것 같다. 내가 완전히 바보라는 생각을하지 않도록 약간의 정당화를 원합니다 :-)). 그런 의견이 당신에 관한 것이라면 부끄러운 일입니다 :-)). 농담 :-))

그러한 실수를 하지 않으려면 다음 사항을 알아야 합니다.

* 파일을 .CPP / .H로 분할하는 이유

* 함수 선언과 선언의 차이점

* 인라인/템플릿 키워드가 필요한 이유 - 제공하는 것

* 클래스 선언 내에서 함수를 선언하면 어떻게 됩니까?

* 컴파일 및 링크 목적

* .OBJ / .LIB / .DLL / .EXE의 차이점과 목적

* 정적 및 동적 연결

* 링커 오류란 무엇인가 = 미해결 기능

* 링커 오류란 무엇인가 = 다중 기호

* 링커가 바이너리 파일을 수집하는 원리

* extern이라는 단어를 제공하는 것

.

자, 여기 어딘가에 있습니다.

 
jartmailru >> :
* 함수 선언과 선언의 차이점.

글쎄, 선언과 선언은 동일합니다 :).

선언 - 정의 (선언 - 정의).

 

예 ... 나는 이미 내가 틀렸다는 것을 깨달았습니다 ... 신경 쓰지 마세요. 우리는 공부할 것입니다 ...

받은 dll과 관련하여 ... 불행히도 아직 내 기대에 부응하지 못했습니다 :-); 물론 즉시 결과를 얻지 못했습니다. 원칙적으로 바로 된다면 매우 좋을 것입니다.

아아, 기적은 없다... :-)

나는 그녀에게 3x3 정방 행렬을 입력으로 주려고 했습니다. 출력 결과는 무엇이어야 하는지, 예를 통해 알고 있습니다. 불행히도 출력은 0에 의한 특이값이고 벡터의 출력 행렬은 단위입니다.

저것들. 뭔가를 하고 있는 것 같긴 한데 무엇을 하고 있는지는 불명... 내가 아는 한 dll 안에 출력 정보를 쓰는 것은 불가능하다... like print("a["+i+"]", a [i]) 때문에 그는 그것을 표시하지 않을 것입니다 ... 나는이 스레드의 첫 번째 예에서 이것을 판단합니다 ...

함수 printf ("GetDoubleValue가 %.8lf\n", dpar 사용)가 있었습니다.

메타 트레이더의 로그에 정보가 표시되지 않았으며 함수(return)의 반환된 값만 표시되었습니다.

저것들. 내가 이해하기 때문에 디버깅 할 수 없습니까? 아니면 내가 또 뭔가를 망쳤습니까?

이제 dll 프로젝트가 아니라 exe를 만들려고 합니다. EXE 프로젝트가 디버그하기 더 쉽다고 말씀하셨습니다.

사실, WinMain 기능이 거기에 나타나며 어떤 이유로 exe 프로젝트에 대해 내 프로젝트를 올바르게 도킹하는 방법을 여전히 알 수 없습니다 ...

그리고 나는 여전히 어떤 출력 기능과 어떤 도구를 통해 디버깅하는 것이 더 나은지 알아내지 못했습니다. 지금 Arkhangelsky를 읽고 있습니다 ...

 
TheXpert >> :

글쎄, 선언과 선언은 같은 것입니다 :).

선언 - 정의 (선언 - 정의).

실수해주셔서 감사합니다. 영어로, 나는 알고 있다 :-).

 
boysn >> :

사실, WinMain 기능이 거기에 나타나며 어떤 이유로 exe 프로젝트에 대해 내 프로젝트를 올바르게 도킹하는 방법을 여전히 알 수 없습니다 ...

그리고 나는 여전히 어떤 출력 기능과 어떤 도구를 통해 디버깅하는 것이 더 나은지 알아내지 못했습니다. 지금 Arkhangelsky를 읽고 있습니다 ...

그리고 당신은 3x3 행렬과 디버그 출력으로 테스트 코드를 작성하면 성공할 것입니다.

주목해야 할 주요 사항은 printf()에는 *console* 응용 프로그램이 필요하다는 것입니다.

 
네, 노력하겠습니다...
사유: