小编use*_*489的帖子

大会'召唤'vs'jmp'

我被告知要尝试使用'jmp而不是'call',但是'jmp'并不喜欢我..当我跳它不返回时(因此它永远不会退出并且不开心的日子),但是调用返回和退出正常.

我很高兴使用'呼叫',但实际上我有理由尝试克服'jmp'吗?

这个简单的代码只显示当我'jmp'时它永远不会返回并退出.

谢谢你提前获得任何帮助.

_start:

    jmp _Print
    jmp _Exit

ret


_Exit:

    ; normal exit 

ret


_Print

    ; print something

ret
Run Code Online (Sandbox Code Playgroud)

另外..如果改变了什么,我在Linux终端中运行这一切

x86 assembly subroutine

17
推荐指数
1
解决办法
3万
查看次数

C++ Friend函数不访问私有成员

所以我正在尝试制作一个国际象棋游戏(对我来说是一个终极挑战),而我是这部分的残障......

所以我创建了一个片段对象,其思想是在主游戏代码中,我有一个片段数组,我将数组的地址传递给函数"InitilisePieces"和团队(黑色或白色),它将分配所有的碎片.所以我让这个函数成为了访问所有私有成员的朋友,并且它出现了一个错误,说"无法访问",我不明白我做的事情有什么问题.任何帮助将不仅仅是赞赏!

侧注:像State_和_Location这样的东西,以及正确定义的结构和枚举等,不是问题...(我不认为)

头文件包含:

class   __Piece
{
private:

    State_              e_state;
    Piece_Type_         e_type;
    Team_               e_team;
    _Location           st_location;

    friend void         InitilisePieces     ( __Piece(*)[16], Team_);

public:
    __Piece             ();

};
Run Code Online (Sandbox Code Playgroud)

.cpp文件包含:

void                    InitilisePieces     ( __Piece * pao_piece[16], Team_ )
{
    int         n_count;

    for ( n_count = 0; n_count < 16; n_count++ )
    {
        pao_piece[ n_count ]->e_state;
    }
}
Run Code Online (Sandbox Code Playgroud)

更新:

谢谢你的解释,我得到了我现在出错的地方......那么传递__Piece数组地址的参数是什么?

c++ arrays object friend

0
推荐指数
1
解决办法
108
查看次数

标签 统计

arrays ×1

assembly ×1

c++ ×1

friend ×1

object ×1

subroutine ×1

x86 ×1