- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
考虑这个方法:
result MyClass::getBMPText(Osp::Graphics::Bitmap *pBMP, Osp::Base::String &outtext, const int index) const {
//Do stuff
AppLog("3 Returning %S, 0x%X", outtext.GetPointer(), (int)pBMP);
return E_SUCCESS;
}
我这样调用它:
String itemstr;
Bitmap *pBMP = null;
for (int i = 0; i < ItemCount(); ++i) {
getBMPText(pBMP, itemstr, i);
AppLog("got %d : %S 0x%X", i, itemstr.GetPointer(), (int)pBMP);
}
现在看一下日志:
5537.642,INFO,P35,T00,A190,FileMan::getBMPText (401) > 3 Returning Images, 0xB96E2140 5537.643,INFO,P35,T00,A190,FileMan::Update1p2List (130) > got 0 : Images 0x0
重复我的问题/观察:该函数将其返回值记录为有意义且与刚刚设置的相关。然而,客户端会返回它发送的相同空引用。
最佳答案
您按值传递指针,因此原始指针永远不会改变。将函数签名更改为 Osp::Graphics::Bitmap * & pBMP
以通过引用传递指针。
关于c++ - 什么会导致 `MyType *pType` 在返回时从有效参数变为 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9137290/
考虑以下 C 语言代码: typedef struct { union { struct { int x:16; int y:1
考虑这个方法: result MyClass::getBMPText(Osp::Graphics::Bitmap *pBMP, Osp::Base::String &outtext, const in
这个问题在我脑海里久久萦绕。 我们知道,我们在调试时可以很方便地在GDB中打印数据结构,比如gdb ptype命令,可以输出结构的所有字段值。我知道 GDB 使用 bfd 库来读取目标文件中的符号信息
在 C++11 程序中(在 Linux/Debian/x86-64 上使用 GCC 5 编译,使用 g++ -Og -g3 -Wall -std=c++11 b.cc -o bprog),当你有一个类
我在包含 google/protobuf/timestamp.proto 时遇到问题众所周知的类型,使用时 dep . 我得到一个错误:google/protobuf/timestamp.proto:
我是一名优秀的程序员,十分优秀!