由於缺乏更好的術語,我對OOP場景很陌生。銷燬調用實例
因此,這裏是一個類的例子
class Example{
public:
Example(const char *);
~Example(); //Calls Destroy in Body
Example & copy(const char *);
Example & copy(const Example &);
private:
void destroy();
char * data;
unsigned int size;
};
這是我講的是下面的臨時對象的一個例子。
Example & Example::copy(const Example & oldString) {
size = oldString.getSize();
data = new(std::nothrow) char[size];
if (data != NULL){
for (int i = 0; i <= size; i++){
data[i] = oldString.data[i];
}
}
else{
std::cout << "Data could not be initiallized with a size of" << oldString.getSize() << std::endl;
}
destroy();
return *this;
}
Example & Example::copy(const char * oldString){
Example newCopyString(oldString);
copy(newCopyString);
return *this;
}
有創建臨時對象是在一個Example
對象通過一個char *
轉換許多功能。
所以我需要一種方法來刪除copy(const char * oldString)
中的這個對象。
正如問題所述,我正在嘗試delete
調用實例,我不知道如何。
目前尚不清楚你的問題是什麼。你想要刪除什麼?類Example或const char *的調用實例傳遞給構造函數。請提供方法和示例用法的實現。 – Sid
什麼是*調用實例*? – SergeyA
而不是提供方法本身,你應該可以解釋你想要實現的。 –