- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想达到的目的
At the time of compilation, the compiler knew the function call was valid because you included the iostream header file, but since that function was not part of the cpp file, the compiler just leaves a stub at the call site. The linker goes through the object file, and for each stub, it finds the correct function address and replaces the stub with the correct address from one of the other object files being linked. by ALEX ALLAN , Jumping to C++
在“ stub ”之上,我想在真实的目标文件中看到。
我做了如下,
代码// main.cpp
#include "f.h"
using namespace std;
int main()
{
myfunc();
return 0;
}
//f.cpp
#include "f.h"
void myfunc()
{
}
//f.h
#ifndef F_H_INCLUDED
#define F_H_INCLUDED
void myfunc();
#endif // F_H_INCLUDED
以上 3 个在单独的文件中。
我在 main.o 上使用的 objdump 命令
C:\Users\User\Downloads\binutils-2.22-1-mingw32-bin.tar\binutils-2.22-1-mingw32-
bin\bin>objdump.exe -S -C C:\Users\User\Documents\myC++\testFuncstabs\obj\Debug\
main.o
但现在我无法在此输出中找到 myFunc 的“ stub ”?
谁能帮我解决这个问题?或建议我实现此目标的另一种策略?
最佳答案
在此上下文中的“ stub ”并不意味着一个小函数。相反,它指的是一个小的占位符值。请注意十六进制偏移 109
、120
、125
等如何将 4 个字节作为零?那是 stub 。当链接器处理目标文件时,它将查看存储在目标文件其他位置的重定位表。该表包括对其他符号的引用以及代码/数据的哪些部分使用这些符号。一旦链接器找到该符号的定义位置,它将替换(也称为重新定位)那些“ stub ”值以指向正确的地址。如果您要从实际的可执行文件中查看 main
的反汇编,您会看到所有这些零都被替换为其他值(也就是您的函数、变量等的地址(而不是偏移量))代码使用)。
关于c++ - !编译器只留下一个 stub ! ,C++, 在.o文件中找到这些 "stubs",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17623576/
我有以下 Spring 代码要使用 Spock 进行测试: @Service @RequiredArgsConstructor public class MyService { private f
package main import ( "fmt" "github.com/hyperledger/fabric/core/chaincode/shim" pb "gith
我刚开始使用Wiremock,但对 stub 有疑问。 从文档看来,您似乎可以在映射下使用JSON文件,也可以在Java代码中使用代码stubFor(get(urlEqualTo(...。但是,我发现
我有以下要测试的对象: public class MyObject { @Inject Downloader downloader; public List readFi
我看到它被使用过很多次,但从未真正停下来质疑过它。现在我想知道 stub 和 stub 之间是否有区别! 有吗?还是历史原因? stub !意思是它 stub 一次?并返回到正常的方法调用? 最佳答案
在 Jasmine 中,如何创建一个纯 stub ,其中所有方法都已 stub 并返回未定义? 最佳答案 我认为没有任何现成的东西可以做到这一点,但您可以创建自己的。 describe('Stub a
两个类。父级:B。子级:A。A.method1() 覆盖 B 的。 public class B { protected boolean method1(){...}; } public cl
我有一个函数依赖于另一个函数,而不是测试依赖性我只想测试该依赖函数的特定结果。但是,当我对函数进行 stub 时,什么也没有发生,返回结果就好像我一开始就没有对函数进行 stub 一样。 示例代码:
这是要测试的代码: const AWS = require('aws-sdk'); const { APPLICATIONS, NOTIFICATION_FREQUENCIES } = req
背景 Any client socket program(C) over TCP/IP looks like, /* Socket creation */ sockfd = socket(AF_I
我正在尝试使用 stub 提供程序(我从 this 问题的答案中得到)和 stub 验证器来实现一个简单的同步适配器。对于身份验证,我使用了基本的 sync adapter example由谷歌提供。
与在测试点使用模拟框架(如 Rhino Mocks)相比,是否存在手动创建 stub 类型更有利的情况。 我们在项目中采用了这两种方法。当我查看一长串对象的 stub 版本时,我的直觉是它会增加维护开
我想 stub doSomething 来回调错误。但是,我只希望它在第一次响应时回调并出现错误。我想在第一次调用后恢复 stub 为了 stub 第一个调用,我可以这样做: var stub = s
我有一个 TimeMachine 类,它为我提供当前日期/时间值。该类看起来像这样: public class TimeMachine { public virtual DateTime Ge
如果我有一个 Rhino Mock 对象,它已经像这样声明了一个 stub 调用: mockEmploymentService.Stub(x => x.GetEmployment(999)).Retu
通常使用 Mockito,如果你 stub 一个被多次调用的方法,你会这样做 Mockito .doReturn(0) .doReturn(1) .doReturn(2)
逻辑 public class Logic { String date = (LocalDateTime.now()).format(DateTimeFormatter.ofPattern("yyyy
我想达到的目的 At the time of compilation, the compiler knew the function call was valid because you includ
这可能是一个简单的问题,但我无法缩短它。 我正在测试我的一个类,ClassToTest。在生产中,它将对第三方库对象(ThirdPartyClass 的实例)执行操作。 我想用 stub 模拟那个类。
我是 js 单元测试的新手,对使用 withArgs 进行 stub 有疑问。 我有一些名为“create”的通用外部函数,我只想为某种参数和原始“create”的其他返回值 stub 它。例如: s
我是一名优秀的程序员,十分优秀!