我正在尝试访问结构本身内的运算符,这可能吗?
struct st{
float vd;
float val(){
return this[3]; //this dont work, is there a some way?
}
float operator[](size_t idx){
return vd*idx;
}
};
Run Code Online (Sandbox Code Playgroud) 没有设置优化标志时,此代码工作正常:
#include <cstdio>
int main(){
float *ptr = ({float var[10] = {1,2,3,4,5,6,7,8,9,10}; var;});
float *ptr1 = ({float var[10]; for(int i_=0;i_<10;i_++)var[i_]=i_+1; var;});
float *ptr2 = ({float var[10]; var[4]=5; var;});
printf("\n value = %f %f %f",ptr[4],ptr1[4],ptr2[4]);
}
Run Code Online (Sandbox Code Playgroud)
它5 5 5按预期返回.但是当设置优化标志时,它返回5 0 5.
ptr1有问题与循环有关.为什么?也许这是一个错误?
我正在使用最新的4.8.0,经过测试的x64,x86以及其他版本.所有相同的行为.
我正在使用 epub.js 渲染 .epub 书籍,但我无法在某些电子书中设置 fonSize,它不会覆盖电子书中已设置的字体大小的现有类;
这是来源
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.5/jszip.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/epubjs/dist/epub.min.js"></script>
Run Code Online (Sandbox Code Playgroud)
我尝试用这个设置字体大小,但在已经设置字体大小的 epub 中都不起作用:
rendition = book.renderTo("viewer", { width: "100%", height: "100%" });
rendition.themes.fontSize("200%"); //this dont work
rendition.themes.default({ "body": { "font-size": "30px"}}); //this dont work
解决方案是循环每个子类并重置为所需的大小。我不知道该怎么做。
谁能指出我正确的方向?如何设置字体大小?