옥히독히
282
2021-10-18 16:12:13
4
136

소켓통신 Receive 질문드립니다.


test.h
typedef struct _Test_Act
{
bool bTest1;
float fTest2;
}Test_Act;

socket.h
Test_Act m_stTest_Act;

socket.cpp
Receive((char*)&m_stTest_Act, sizeof(Test_Act));


위와 같은 구조체가 있고
소켓통신으로 Receive해서 m_stTest_Act의 데이터를 받아왔는데

Receive해서 받은 데이터들을 다른 클래스에서 사용하려면 어떻게 해야 하나요?

0
  • 답변 4

  • 안전라이딩
    1k
    2021-10-18 16:19:33

    그냐 가져다 쓰면 되죠.. 어떻게 해야 하냐는 게 잘 이해가 가질 않네요.

  • 옥히독히
    282
    2021-10-18 16:32:39

    안전라이딩

    다른 클래스에서 Test_Act m_stTest_Act; 선언하고

    m_stTest_Act.fTest2; 값을 가져오려고 하면

    Receive해서 받아온 값이 안나오고 계속 0이 나오는데요

    어떻게 가져다 써야 받은 값을 다른 클래스에서 쓸 수 있는지 이래저래 해봐도 안되네요ㅠ





  • TigerJK
    30
    2021-10-19 10:10:38

    글 이해를 잘 못하겠는데


    다른 클래스에서 Test_Act m_stTest_Act; 선

    Socket 클래스에서 Test_Act m_stTest_Act; 선언

    두 m_stTest_Act 변수는 다른 변수 이기때문에 공유가 안되는게 아닐까 싶습니다.


    socket m_Sock;

    이런식으로 소켓 변수를 만드시고 나신후에 해당 변수를 통해 receive 하시고나서

    m_Sock.m_stTest_Act; 변수 값을 참조해 보시는게


  • 옥히독히
    282
    2021-10-21 10:02:23

    TigerJK

    TestA.h에

    typedef struct _Test_Act
    {
        bool bCommand;
    }Test_Act;


    그리고 TestB 클래스와 TestC 클래스가 있다고 했을 때

    TestB클래스에서 Test_Act *m_testAct = nullptr;

    m_testAct->bCommand = true; 라고 했을 때

    TestC클래스에서  Test_Act m_testAct;

    printf("%d", m_testAct.bCommand); 해보면

    0이 나오는데 어디가 잘못된건가요?



  • 로그인을 하시면 답변을 등록할 수 있습니다.