[英]Reference of a function return value
假設我有這樣的東西
class HandleInterface {
GLuint handle_;
protected:
void SetHandle( GLuint i ) {
handle_ = i;
}
public:
GLuint GetHandle() const {
return handle_;
}
virtual ~HandleInterface() {}
};
現在,我需要引用handle_。
// I would need &handle_
glGenBuffers( 1,&handle_ );
我是否需要為handle_
編寫另一個吸氣劑? 或者如何從我的getter方法中獲取handle_
的引用?
而且glGenBuffers
某種程度上違反了我的SetHandle
方法,因為它只能通過SetHandle
方法而不是引用來設置handle_
。 有什么想法可以避免這種情況嗎?
如果要保持handle_
完全封裝, glGenBuffers
局部變量傳遞給glGenBuffers
:
GLuint handle;
glGenBuffers(1, &handle);
SetHandle(handle);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.