我正在拍打打字稿.它在hello world阶段运行良好.我现在正在尝试使用npm模块:
index.ts =
import _ = require('lodash')
console.log(_.toUpper('Hello, world !'))
Run Code Online (Sandbox Code Playgroud)
这不起作用:
tsc index.ts - > Cannot find module 'lodash'. (2307)node-ts index.js - > Cannot find module 'lodash'. (2307)看看打字稿文档和谷歌没有帮助.其他S/O问题要么没有答案(此处和此处)或不相关.
元素:
npm i --save lodash并存在于我的文件系统中(已选中)typings i --save lodashimport * as _ from 'lodash'或const _ = require('lodash')不起作用"moduleResolution": "node"并且"module": "commonjs"如某些答案所示,仍然无法正常工作我们如何在打字稿中使用npm包?
我现在正在使用共享内存.
我无法理解alignof和alignas.
cppreference不清楚:alignof返回"对齐"但什么是"对齐"?要为要对齐的下一个块添加的字节数?填充尺寸?堆栈溢出 /博客条目也不清楚.
有人能解释清楚alignof和alignas?
我刚接受采访.我被问到什么是"前瞻性声明".然后我被问到他们是否是与前瞻性声明有关的危险.
我无法回答第二个问题.在网上搜索没有显示任何有趣的结果.
那么,有人知道与使用前向声明有关的任何危险吗?
我正在阅读Boost阵列文档,我看到这一行:
如果您使用的是C++ 11,则应考虑使用std :: array而不是boost :: array
我的印象是Boost,因为它的主要库,总是比标准库更好,因为:
所以我更倾向于提升stdlib?
如果不是/更复杂,我的哪些假设需要纠正?
我正在尝试为我的cmake构建添加一个自定义构建类型,目标是代码覆盖率.
但是,我无法使其发挥作用.
这是我的代码,使用cmake 2.8.5:
message("* Adding build types...")
if(CMAKE_CONFIGURATION_TYPES)
list(APPEND CMAKE_CONFIGURATION_TYPES CodeCoverage)
list(REMOVE_DUPLICATES CMAKE_CONFIGURATION_TYPES)
set(CMAKE_CONFIGURATION_TYPES "${CMAKE_CONFIGURATION_TYPES}" CACHE STRING
"Add the configurations that we need"
FORCE)
message(" Available build types are now : ${CMAKE_CONFIGURATION_TYPES}")
else()
message(" XXX custom build types are not allowed...")
endif()
Run Code Online (Sandbox Code Playgroud)
我得到"不允许XXX自定义构建类型......"...
我有一个对象(Z),它来自另外两个对象(A和B).
A和B都从派生enable_shared_from_this<>分别enable_shared_from_this<A>和enable_shared_from_this<B>.
当然我打电话shared_from_this()给Z.当然编译器报告这个含糊不清.
我的问题是:
enable_shared_from_this<>还是会创建两个分开的引用计数(坏!)注意:当基类和派生类都继承自boost :: enable_shared_from_this但我没有真正回答时,我发现这个其他问题是坏的弱指针.我virtual也应该使用这个技巧吗?
我确切地说,我将这个问题限制为我的x86(64位)linux盒子的"本机"开发.没有嵌入式或非x86架构.
由于我是C++用户并且有C++复兴,我目前正在使用C++进行个人项目.
现在我正在使用强大的,传统的linux/gcc/make工具链.
但通过博客文章和SO问题,我最近意识到了新的有前途的工具:
这些工具鲜为人知,很容易甚至不知道它们.
还有其他有趣的鲜为人知的工具我应该注意吗?例如替代gdb等?(我也在使用cmake)
我首先寻找易于开发,然后提高开发速度.欢迎任何其他改进.
如果可能,免费工具.
我有Error: Cannot find module xyz/abcd错误.
是的,安装了所需的模块.
据module.require的伪代码在这里,它应该工作.
我试图require()深入了解为什么它找不到我的文件.我的节点调试器不会进入require().我已经尝试过这项strace / grep NOENT技术,但也没有成功.
知道如何解决令人讨厌的require()失败吗?
注意:以防万一:错误来自需要xyz/b的文件node_modules/xyz/a.它应该根据文档工作.
我正在使用同源 iframe 来加载外部小部件(通过跨源脚本加载 tlk.io)。我试图给予 iframe/widget 尽可能低的权限,以将其与我的应用程序隔离。
\nMDN 给出以下警告:
\n\n\n关于沙箱的注意事项:
\n当嵌入文档与嵌入页面具有相同来源时,强烈建议不要同时使用allow-scripts和allow-same-origin,因为这会让嵌入文档删除沙箱属性\xe2\x80\x94,使其不再存在比根本不使用沙箱属性更安全。
\n
Firefox 开发工具向我显示此警告:
\n\n\n沙箱属性同时具有允许脚本和允许同源的 iframe可以删除其沙箱。
\n
我的问题是:在这种情况下(sandbox="allow-same-origin allow-scripts" ) iframe 如何删除其沙箱?什么js代码可以执行这个?
从 iframe 中,我尝试查看window.opener但它为空。window.parent不是指父级(编辑:不正确,我错误地使用了开发工具)。我无法从 iframe 本身找到对 \xc2\xabiframe\xc2\xbb 的引用...
这无法在gcc 4.1.2/RedHat 5中编译:
#include <string>
#include <vector>
#include <map>
class Toto {
public:
typedef std::string SegmentName;
};
class Titi {
public:
typedef Toto::SegmentName SegmentName; // import this type in our name space
typedef std::vector<SegmentName> SegmentNameList;
SegmentNameList segmentNames_;
typedef std::map<SegmentName, int> SegmentTypeContainer;
SegmentTypeContainer segmentTypes_;
int getNthSegmentType(unsigned int i) const {
int result = -1;
if(i < segmentNames_.size())
{
SegmentName name = segmentNames_[i];
result = segmentTypes_[ name ];
}
return result;
}
};
Run Code Online (Sandbox Code Playgroud)
错误是:
error: no match for 'operator[]' in '(...)segmentTypes_[name]'
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:340: …Run Code Online (Sandbox Code Playgroud)