我在MacBook Air上运行.我安装了MS Code作为IDE并安装了TypeScript.
我有一个简单的文件,只有这一行:
import fs = require('fs');
Run Code Online (Sandbox Code Playgroud)
我在括号内的'fs'下得到一个红色波浪形,错误信息是[ts] Cannot find module 'fs'.该文件的扩展名为.ts.我是JavaScript和TypeScript的新手,但我的印象fs是核心模块,所以怎么能找不到它?我该如何解决这个问题?
我尝试过的其他事情:
tsc.我在那里得到一个基本相同的错误:error TS2307: Cannot find module 'fs'. sudo npm install fs -g.这报告显然取得了成功,但并未解决问题.我探索了SE和网络,但看起来很接近的答案似乎都假设'fs'可用.
我有一个数据框,给出了这个初始构造:
df_data = pd.DataFrame(columns=['name','date','c1','c2']).set_index(['name','date'])
Run Code Online (Sandbox Code Playgroud)
然后我有代码从数据库填充这个框架。我可以打印部分或全部框架并获得合理的结果。就像是:
print df_data.c1.head(3)
name date
Joe 2019-01-01 234324
2019-01-02 4565
2019-01-03 573
Name: c1, dtype: object
Run Code Online (Sandbox Code Playgroud)
从数据库填充后,我进行了各种分析计算,尝试使用locas 访问数据,例如,df_data.loc['Joe', 'c1'] 我希望从中获得结果,其中包含索引的日期和列的值c1,其中“名称”部分多重索引的已被选择为“Joe”。就像是:
print df_data.loc['Joe', 'c1']
date
2019-01-01 234324
2019-01-02 4565
2019-01-03 573
Name: c1, type: object
Run Code Online (Sandbox Code Playgroud)
我已经运行了三次,用不同的日期范围填充框架。三者中的两个按预期工作并如上所述。在第三个中,我得到KeyError: ('Joe', 'c1')了df_data.loc['Joe', 'c1'],但是,即使在这种“损坏”的情况下,我也得到了一个非常好的结果df_data.loc['Joe'].c1,我认为在这种情况下应该给出相同的答案。我还可以打印整个框架df_data并获得完美合理的结果。我将KeyError这里解释为 Pandas 认为c1应该在索引中而不是给出列名。
我无法在独立的示例中重现这一点,因为由于我无法理解的原因,结果似乎取决于框架中的数据而不是框架的结构。(相同的结构“适用于”三种情况中的两种。)那么具体的问题:
loc['Joe', 'c1']导致c1被视为键的一部分而不是列名?(无论我可能有什么其他错误,我不知道这里的第二个参数应该在任何记录的情况下解释为键的一部分,例如我没有类似的东西loc[('Joe','c1')]。)关于模板和鸭子类型之间的关系,有一个更早的问题(8年前!):C ++模板和鸭子类型之间的关系是什么? 对于C ++的新功能,我已经为我的问题借用并修改了标语行。
在C ++ 20中,将出现“概念”的新功能,该功能看起来更像是鸭式打字功能。新的C ++“概念”等同于C ++的鸭子类型是否正确?如果没有,那有什么不同?
我是编写自己的标题的新手,但由于必要,我必须学习.
我正在写一个标题,而我正在试图控制标题.在包含的头文件之前和之后有一个或两个下划线之间有区别吗?
拿这个假设的例子:xh
//x.h
#ifndef __X_H_INCLUDED__
#define __X_H_INCLUDED__
//functions n stuff
#endif
Run Code Online (Sandbox Code Playgroud)
与:
//x.h
#ifndef _X_H_INCLUDED_
#define _X_H_INCLUDED_
//functions n stuff
#endif
Run Code Online (Sandbox Code Playgroud)
一个或多或少比另一个好吗?有区别吗?
我有一些代码大量使用模板类.此时可能但不希望更改现有代码库.我需要编写一个新的类,它将作用于两个模板类(为了这个问题的目的)是任意的,除了有一个共同的模板参数.一个简化的例子:
template<typename T>
class A {
// Implementation details
};
template<typename T>
class B {
// Implementation details
};
template<typename T, typename X<T>, typename Y<T>> // This syntax is invalid!
class C {
// Implementation details
};
Run Code Online (Sandbox Code Playgroud)
我需要写课C.示例中显示的语法暗示了我想要做什么但不起作用.模板参数X和Y这里必须通过采用相同的模板参数"捆绑在一起" T.除此之外,它们可以是任意的.
这意味着"喜欢"的东西C<std::string,A<std::string>,B<std::string>>应该是有效的,但C<std::string,A<std::string>,B<std::map>>不应该因为A并且B没有相同的模板参数.(引号中的"like"再次表示语法在C上面的声明中仍然是错误的.)
其他尝试(也失败了)包括:
template<typename T, template<typename> class X<T>, template<typename> class Y<T>>template<typename T> template<typename X<T>, typename Y<T>>有可能这样吗?如果是这样,语法是什么?
谢谢!
我正在尝试使用 gnu make 在 MacOSX 上编译程序 mafTools。我收到以下错误:
cd mafExtractor && make all
clang -std=c99 -stdlib=libstdc++ -O3 -c -O3 -Wall -Werror --pedantic -funroll-loops -DNDEBUG -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -I ../../sonLib/lib -I ../inc -I ../external src/mafExtractorAPI.c -o src/mafExtractorAPI.o.tmp -lm
Run Code Online (Sandbox Code Playgroud)
这给出了错误:
clang: error: -lm: 'linker' input unused [-Werror,-Wunused-command-line-argument]
make[1]: \*** [src/mafExtractorAPI.o] Error 1
make: \*** [mafExtractor.all] Error 2
Run Code Online (Sandbox Code Playgroud)
我查看了类似的错误,但无法修复它。任何帮助都感激不尽。谢谢!
这是包: https: //github.com/dentearl/mafTools/tree/master/mafExtractor 这里的其他所有内容都已成功编译。
这是生成文件: https://github.com/dentearl/mafTools/blob/master/mafExtractor/Makefile
非常感谢。
c++ ×4
c++-concepts ×1
c++20 ×1
class ×1
duck-typing ×1
header ×1
javascript ×1
macros ×1
pandas ×1
python ×1
templates ×1
tsc ×1
typescript ×1