这更像是一个设计问题.(所以,没有代码.我可以发布创建Enum的代码并将其指定为null如果你想让我这样做.:))我最近一直在思考这个问题,但不能提出一个很好的理由.Enum常量是隐式静态和最终的.Enum意味着 - "我可以取一个存在于我身上的常数值".为什么允许Enum具有空值?为什么不隐式地将Enum的值默认为a Enum.DEFAULT或Enum.None?这不是比允许Enum更好的方法null吗?
我在Windows目标上使用Real View编译器工具(RVCT 3.2)创建了一个共享库(*.so).然后我尝试在linux系统上使用gcc将这个*.so文件链接到我的应用程序.
将此共享库与我的应用程序linux链接的gcc选项是什么?
我的问题是,是-shared选项,用作
gcc -shared myfile.so
Run Code Online (Sandbox Code Playgroud)
...,用于创建SO文件或链接SO文件?我相信它创造了类似的东西:
gcc -lmyfile.so
Run Code Online (Sandbox Code Playgroud)
这够了吗?或者是否有任何其他开关告诉链接器它是一个动态库(共享对象)?
是否有算法从像素中获取图像的线条笔划(忽略曲线,圆圈等,所有内容将被视为线条,但仍然类似于矢量)?然后得到它们的结果,就像一个Array?
这就是它的基本工作方式
这样,每行像素将被读作1条水平线,我也想处理垂直线; 但是如果有一个圆形的脂肪线需要超过1行
它将被视为一条线.它的线宽与它所具有的像素高度相同.
例如,假设我们有一个包含(红色,绿色,蓝色,alpha)格式(JavaScript)像素行的数组:
/* formatted ImageData().data */
[
new Uint8Array([
/* first pixel */
255, 0, 0, 255,
/* second pixel */
255, 0, 0, 255
]),
new Uint8Array([
/* first pixel */
0, 0, 0, 0,
/* second pixel */
0, 0, 0, 0
])
]
Run Code Online (Sandbox Code Playgroud)
这将是2x2px图像数据,具有直的水平红线.所以,从这个数组中,我想得到一个包含行数据的数组,如:
[
// x, y: start point
// tx, ty: end point
// w: line width
// the straight horizontal red line of 1 pixel
{ x: 0, …Run Code Online (Sandbox Code Playgroud) 我试图在Lua中获取数组的长度table.getn.我收到此错误:
不推荐使用函数table.getn!
(在Transformice Lua中)
我们假设我有一个项目,它的主要源目录是:
C:\product\src
Run Code Online (Sandbox Code Playgroud)
基于此目录,每个导入路径都与它相关.即,假设:
// Current script: C:\product\src\com\name\product\blah.ts
import { thing } from '/com/name/product/thing';
Run Code Online (Sandbox Code Playgroud)
与...一样:
// Current script: C:\product\src\com\name\product\blah.ts
import { thing } from '../../../com/name/product/thing';
Run Code Online (Sandbox Code Playgroud)
我的条目编译文件位于:
C:\product\src
Run Code Online (Sandbox Code Playgroud)
例如.那么,有没有办法C:\product\src在编译器选项中指定这样的输入路径(例如)?我需要在tsconfig.json文件中指定它,因为我将使用webpack.
我已经尝试过上面的示例,但TypeScript表示无法找到所请求的模块:
// Current script: A.ts
import { B } from '/com/B';
// Current script: B.ts
export const B = 0;
Run Code Online (Sandbox Code Playgroud)
我的tsconfig.json文件(在另一个项目中,但两者都相似):
{
"compilerOptions": {
"module": "commonjs",
"noImplicitReturns": true,
"noImplicitThis": true,
"noUnusedLocals": true,
"preserveConstEnums": true,
"removeComments": true,
"sourceMap": true,
"strictNullChecks": true,
"target": "ES6"
},
"include": [
"./src/**/*.ts",
"./src/**/*.d.ts"
]
}
Run Code Online (Sandbox Code Playgroud) typescript typescript1.8 typescript2.0 typescript2.1 typescript2.2
根据维基百科上的"递归下降解析器",只有LL(k)语法才能实现没有回溯(也就是预测解析)的递归下降.
在其他地方,我已经读过Lua的实现使用这样的解析器.但是,该语言不是 LL(k).事实上,Lua天生就是含糊不清的:是a = f(g)(h)[i] = 1指a = f(g); (h)[i] = 1还是a = f; (g)(h)[i] = 1?这种歧义通过解析器中的贪婪来解决(因此上面被解析为错误的a = f(g)(h)[i]; = 1).
这个例子似乎表明预测解析器可以处理不是LL(k)的语法.事实上,它们是否能够处理LL(k)的超集?如果是这样,有没有办法找出一个给定的语法是否在这个超集中?
换句话说,如果我正在设计一种我想使用预测解析器解析的语言,我是否需要将语言限制为LL(k)?或者我可以适用更宽松的限制吗?
lua parsing recursive-descent context-free-grammar ll-grammar
是否可以将绘制Drawable为Texture(位图)?我怎么能这样做,拜托?
我的尝试
我修改了绿圈示例.现在它真的被绘制为位图......
但它就是这样绘制的:
我想要抗锯齿.
通过RenderWindow课程,我可以通过传递一个来消除锯齿ContextSettings.使用@ Mario的建议我需要,不幸的是RenderTexture我无法控制它ContextSettings.
@ AlexG的建议
我创建了一个Context,但我的编译器说my_test.cc:9:57: error: use of deleted function 'sf::Context::Context(const sf::Context&)'.呃!还有其他选择
#include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
int main()
{
sf::ContextSettings settings =
sf::ContextSettings(0, 0, 6);
sf::Context context = sf::Context(settings, 200, 200);
context.setActive(true);
sf::RenderWindow window(
sf::VideoMode(200, 200), "sfml test", sf::Style::Default,
settings
);
sf::RenderTexture cacheTexture;
if (!cacheTexture.create(200, 200)) return 0;
cacheTexture.setSmooth(true);
sf::CircleShape shape(100.f, 75);
shape.setFillColor(sf::Color::Green);
cacheTexture.setActive(true);
cacheTexture.draw(shape);
cacheTexture.setActive(false);
context.setActive(false); …Run Code Online (Sandbox Code Playgroud) 我使用Gem Coocon作为嵌套表格.
#end_date_job_portfolio如果.checkBoxCurrentJob选中,我需要隐藏字段.问题是如果用户没有点击添加新的嵌套表单,jQuery就看不到标签,因为这些标签document还没有.
为此,我使用了cocoon:after-insert.我的脚本:
$(document).ready ->
checkbox_date = ""
end_date = ""
$('.experiences').on 'cocoon:after-insert', ->
checkbox_date = $(".checkBoxCurrentJob")
end_date = $('#end_date_job_portfolio')
console.log(checkbox_date)
#show it when the checkbox is clicked
?heckbox_date.on 'click', ->
console.log("la la la")
if checkbox_date.prop('checked')
checkbox_date.hide()
else
checkbox_date.fadeIn()
return
Run Code Online (Sandbox Code Playgroud)
它显示ReferenceError: \u0441heckbox_date is not defined错误.如何将click checkbox_date和end_date值传递cocoon:after-insert给click事件checkbox_date?
为什么file:协议在这个 URL 中有 3 个(反)斜杠?
file:///C:/Users
Run Code Online (Sandbox Code Playgroud)
(C:/Users是此 URL 的路径名。)
URL 解析器如何处理它?
我认为这 3 个斜线的最后一个斜线可能意味着“路径”,我在声明之前输入了一个主机名,比如
file://domainname.extension/C:/Users
Run Code Online (Sandbox Code Playgroud)
但是 JavaScript 的 URL 解析器会忽略这个域名。
当我用GCC编译时:
#include <iostream>
#include <string>
int main()
{
std::cout << std::string("\r\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
通过使用以下批次:
g++ -Wall main.cc
Run Code Online (Sandbox Code Playgroud)
并尝试执行output(a.exe),然后Windows崩溃初始化时出现此错误:
如果我避免std::string在C++代码中使用它会正常执行,甚至包括<string>.有任何想法吗?
注意,第一次测试std::string.
我运行Windows 8/64位.我的编译器包含这个文件build-info.txt:
# **************************************************************************
version : MinGW-W64-builds-4.3.0
user : nixman
date : 03.30.2017- 1:01:08 PM
args : --mode=gcc-6.3.0 --buildroot=/c/mingw630 --jobs=2 --rev=2 --threads=win32 --exceptions=sjlj --arch=i686 --bin-compress
[much more here...]
# **************************************************************************
Run Code Online (Sandbox Code Playgroud)
另请注意,我习惯于禁用和卸载所有可能的防病毒实用程序(例如,Windows Defender).
c++ ×2
gcc ×2
javascript ×2
lua ×2
algorithm ×1
coffeescript ×1
enums ×1
file-uri ×1
java ×1
linker ×1
ll-grammar ×1
parsing ×1
sfml ×1
typescript ×1
url ×1
windows ×1
windows-8 ×1