我想知道是否有可能在运行时声明数组大小而不使用新的关键字。
struct myKernel
{
uint8_t **var;
myKernel(){}
myKernel(const int number = 2)
{
//I want to do something like
//var = new int*[number]; but not allocate it on the heap
*var = a[number];
}
void operator()
{
//do stuff here with the var array
}
};
谢谢你的时间!
答案 0 :(得分:1)
如果您想在运行时分配某些内容(即根据运行时信息),那么 可以使用基于堆的分配。
您需要的另一种方法是使用var newWindow = window.open('', '', 'width=100, height=100'),
document = newWindow.document.open(),
pageContent =
'<!DOCTYPE html>' +
'<html>' +
'<head>' +
'<meta charset="utf-8" />' +
'<title>Inventory</title>' +
'<style type="text/css">body {-webkit-print-color-adjust: exact; font-family: Arial; }</style>' +
'</head>' +
'<body><div><div style="width:33.33%; float:left;"><img src="img/Logo_big.png"/></body></html>';
document.write(pageContent);
document.close();
newWindow.moveTo(0, 0);
newWindow.resizeTo(screen.width, screen.height);
newWindow.print();
newWindow.close();
并使用std::vector
,但某处仍会有动态分配。