Çözüldü sequence hk

  • Konuyu açan Konuyu açan enes turan
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 9
  • Gösterim Gösterim 87
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

enes turan

Yardımsever Üye
Yardımsever Üye
MT Üye
Mesaj
589
Çözümler
38
Beğeni
306
Puan
909
Ticaret Puanı
0
merhabalar geliştirdiğim filesten Sequence yi kaldırmıştım

şimdi eklediğim bir sistemde şöyle bir kod var

C++:
Genişlet Daralt Kopyala
    if (!Send(pack))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
        return;
    }

    if (!Send(subpack))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
        return;
    }

ben sequenciyi kaldırdığım için build alamıyorum bu if yapılarını nasıl düzenlemem gerekiyor ?
 
Çözüm
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

19445 eklentisini görüntüle
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C...
Bu kodların sequence ile bir bağlantısı yok. Eklediğin kısmı ve hatayı gösterir misin?
 
Bu kodların sequence ile bir bağlantısı yok. Eklediğin kısmı ve hatayı gösterir misin?


eklediğim sistem

aldığım hata
Adsız.webp
 

Dosya Eklentileri

Sequence ile alakaları yok.

Şu şekilde değiştir:
C++:
Genişlet Daralt Kopyala
if (!Send(&pack, sizeof(pack)))
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

Adsız.webp
 
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

19445 eklentisini görüntüle
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoPeek(C& v) {
            return Peek(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoRecv(T& c_pvData) {
            return Recv(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoRecv(C& v) {
            return Recv(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool SendFlush(const T& c_pvData) {
            return SendFlush(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool SendFlush(const C& v) {
            return SendFlush(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool Send(const T& c_pvData) {
            return Send(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool Send(const C& v) {
            return Send(v.size() * sizeof(typename C::value_type), v.data());
        }
 
Çözüm
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoPeek(C& v) {
            return Peek(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoRecv(T& c_pvData) {
            return Recv(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoRecv(C& v) {
            return Recv(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool SendFlush(const T& c_pvData) {
            return SendFlush(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool SendFlush(const C& v) {
            return SendFlush(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool Send(const T& c_pvData) {
            return Send(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool Send(const C& v) {
            return Send(v.size() * sizeof(typename C::value_type), v.data());
        }
teşekkür ederim :D

peki bu şekilde düzenlediğimdede hata almadım böyle olursa bir problem çıkarırmı ?

C++:
Genişlet Daralt Kopyala
    if(!Send(sizeof(subpack) , &subpack))
        
    if(!Send(sizeof(pack) , &pack))
 
teşekkür ederim :D

peki bu şekilde düzenlediğimdede hata almadım böyle olursa bir problem çıkarırmı ?

C++:
Genişlet Daralt Kopyala
    if(!Send(sizeof(subpack) , &subpack))
       
    if(!Send(sizeof(pack) , &pack))
C++:
Genişlet Daralt Kopyala
if (pack.subheader == EXPECTED_SUBHEADER && !Send(pack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
    return;
}

if (subpack.subheader == EXPECTED_SUBHEADER && !Send(subpack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack", subpack.subheader);
    return;
}

Şu şekilde de olabilir aslında
 
C++:
Genişlet Daralt Kopyala
if (pack.subheader == EXPECTED_SUBHEADER && !Send(pack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
    return;
}

if (subpack.subheader == EXPECTED_SUBHEADER && !Send(subpack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack", subpack.subheader);
    return;
}

Şu şekilde de olabilir aslında
valla 5.8 den direk eklentileri çektim ne olur ne olmaz :D
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst