TWICImage 在分配时出现访问冲突
TWICImage giving access violation on assignment
我正在尝试使用 C++builder 中的 TWICImage class 将内存中的位图保存到 TIFF 文件。但是,任何尝试在 TWICImage 上使用 Assign() 方法都会出现访问错误。
例如:
TBitmap* bmp = new TBitmap();
TWICImage* wic = new TWICImage();
wic->Assign( bmp );
在第三行给出访问冲突。
经过更多挖掘,以下给出了第二次和后续分配的错误:
TBitmap* bmp = new TBitmap();
for (int i=0; i<10; ++i) {
std::unique_ptr<TWICImage> wic( new TWICImage() );
wic->Assign( bmp );
}
但是,如果我将 TWICImage 指针设置为静态,它就会按预期工作。所以看起来 TWICImage 析构函数中发生了一些奇怪的事情。
我正在尝试使用 C++builder 中的 TWICImage class 将内存中的位图保存到 TIFF 文件。但是,任何尝试在 TWICImage 上使用 Assign() 方法都会出现访问错误。
例如:
TBitmap* bmp = new TBitmap();
TWICImage* wic = new TWICImage();
wic->Assign( bmp );
在第三行给出访问冲突。
经过更多挖掘,以下给出了第二次和后续分配的错误:
TBitmap* bmp = new TBitmap();
for (int i=0; i<10; ++i) {
std::unique_ptr<TWICImage> wic( new TWICImage() );
wic->Assign( bmp );
}
但是,如果我将 TWICImage 指针设置为静态,它就会按预期工作。所以看起来 TWICImage 析构函数中发生了一些奇怪的事情。