小编jsh*_*ran的帖子

使用std :: ostream的declval表达式(对于SFINAE)

我正在尝试创建一个类型特征类来确定特定类型是否T可以通过<<运算符流式传输std::ostream.我正在使用简单的SFINAE技术.

最终,我试图评估替换失败的表达式是:

decltype(std::declval<std::ostream>() << std::declval<T>()) ;
Run Code Online (Sandbox Code Playgroud)

我的期望是,给定t类型Tstd::ostream实例的实例os,如果表达式 os << t格式错误,则应该发生替换失败.

但显然,无论类型如何,替代失败都不会发生在这里T.即使我只是声明typedef使用上面的decltype表达式,在SFINAE的上下文之外,它很乐意编译,即使T不能使用std::ostream.

例如:

struct Foo  { };

int main()
{
    // This compiles fine using GCC 4.9.2
    //
    typedef decltype(
        std::declval<std::ostream>() << std::declval<Foo>()
    ) foo_type;
}
Run Code Online (Sandbox Code Playgroud)

以上将使用GCC 4.9.2进行编译,这不是我预期的,因为<<运算符没有重载以使用类型Foo.当然,如果我说:

std::cout << Foo();
Run Code Online (Sandbox Code Playgroud)

...我收到编译器错误.那么为什么decltype上面的表达式甚至可以编译呢?

c++ sfinae

18
推荐指数
1
解决办法
1629
查看次数

在Java和eclipse中创建属性文件

我想创建一个config.properties文件,我想在其中存储所有的键和值,而不是在Java代码中对它们进行硬编码.

但是,我不知道如何在eclipse中创建属性文件.我研究并找到了有关如何读取属性文件的帮助.我需要有关如何创建它的帮助.

以下是我的具体问题:

  1. 可以在eclipse中创建config.properties文件,并将数据直接输入到它中,就像config.properties类似于文本编辑器一样?
  2. 如果可以直接创建,请告诉我创建此属性文件的步骤吗?
  3. 我假设可以创建属性文件,就像创建java项目,java类等一样(通过右键单击包或项目级别).这是正确的假设吗?
  4. 或者创建属性文件并向其添加数据需要通过java编码来完成?

我将非常感谢任何帮助.

java eclipse

15
推荐指数
1
解决办法
5万
查看次数

不推荐使用 GET_SIGNATURES

我试图在我的 Android 应用程序中将内容分享到 Facebook,我需要一个密钥哈希......但我无法查看HashKey我的logcat因为GET_SIGNATURES已弃用......有什么方法可以查看我的哈希密钥?

这是代码

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        printhashkey();
    }



    public void printhashkey(){

        try {
            PackageInfo info = getPackageManager().getPackageInfo(
                    "com.capstone.facebookshare",
                    PackageManager.GET_SIGNATURES);

            for (Signature signature : info.signatures) {
                MessageDigest md = MessageDigest.getInstance("SHA");
                md.update(signature.toByteArray());
                Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
            }
        } catch (PackageManager.NameNotFoundException e) {

        } catch (NoSuchAlgorithmException e) {

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

android android-studio

4
推荐指数
2
解决办法
5494
查看次数

如何设置依赖于另一个位置可变的单元格的单元格值

我有一个奇怪的任务要执行,我无法想象如何去做,甚至无法想出一个术语来谷歌,因为我不太擅长 excel 公式,而且我不允许使用 VBA:

如果“D”列包含“S”或“H”,则需要执行以下操作:

  1. 转到同一行的“E”列
  2. 通过向上移动找到包含值的“E”列中的第一个单元格
  3. 向右转到“F”列
  4. 将该值复制到您开始的行中“B”列中的单元格

我知道这很令人困惑,所以我添加了一个屏幕截图: 截屏

有一些条件:

  • 正如我提到的,我不允许使用 VBA。
  • 行数可以改变,我想会增加更多。
  • 它显然只需要一个公式,以便在添加新行时可以复制和粘贴。

我希望我说清楚了,因为英语不是我的母语。如果有不清楚的地方,请随时提问。

excel excel-formula

3
推荐指数
1
解决办法
306
查看次数

Clojure:如何将cons转换为list

(cons 1 (list 2 3))返回一个clojure.lang.cons.我该怎么把它转换成clojure.lang.PersistentList

clojure

1
推荐指数
2
解决办法
351
查看次数

Excel将数字转换成相应的单词

点击查看图片

我想将excel中的位数转换为相应的单词,如上图所示。如何在 Excel 工作表中实现此功能?感谢您的回答。

excel vba excel-formula

-3
推荐指数
1
解决办法
110
查看次数

标签 统计

excel ×2

excel-formula ×2

android ×1

android-studio ×1

c++ ×1

clojure ×1

eclipse ×1

java ×1

sfinae ×1

vba ×1