小编ayu*_*hgp的帖子

为什么创建了register关键字?

在阅读Herb Sutter撰写的关键词(或其他名称)时,我遇到了以下几点:

没错,有些关键字在语义上等同于空格,这是一个美化的评论.

我们已经看到为什么C++语言将关键字视为保留字,我们已经看到两个关键字-auto和register--它们对C++程序没有任何语义差异.不要使用它们; 无论如何,它们只是空格,并且有更快的方式来输入空格.

如果关键字auto(可能不是在C++ 11中)并且register没有价值,那么它们为什么被创建和使用?

如果包含register变量之前没有任何区别

#include<stdio.h>
int main(){
    register int a = 15;
    printf("%d\n%d\n",&a,a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么上述程序会出错?

test_register.c:在函数'main'中:

test_register.c:4:2:错误:请求的寄存器变量'a'的地址

的printf( "%d \n%d \n",&A,A);

以下程序适用于C++.

#include<iostream>
int main(){
    register int a = 15;
    std::cout<<&a<<'\n'<<a;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c c++ language-lawyer c++11

44
推荐指数
3
解决办法
7265
查看次数

从CompletableFuture抛出异常

我有以下代码:

// How to throw the ServerException?
public void myFunc() throws ServerException{
    // Some code
    CompletableFuture<A> a = CompletableFuture.supplyAsync(() -> {
        try {
            return someObj.someFunc();
        } catch(ServerException ex) {
            // throw ex; gives an error here.
        }
    }));
    // Some code
}
Run Code Online (Sandbox Code Playgroud)

someFunc()抛出一个ServerException.我不想在这里处理这个问题,而是将异常抛给someFunc()调用者myFunc().

java exception-handling exception java-8 completable-future

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

在接受类的方法中使用枚举的接口方法

我有一个需要接受Enum类的方法.这些枚举实现了一个接口.现在我需要访问像ordinal(),name()等的Enum方法和我的接口方法.我尝试过的:

public <T extends ConfigFeature, Enum> void showEnabledFeatures(Class<T> enumType, long mask) {
    List<T> list = Arrays.asList(enumType.getEnumConstants());
    list.forEach(item -> {
        // My interface's method, works fine
        item.getMask();
        // Enum method doesn't work:
        // item.ordinal();
    });
}
Run Code Online (Sandbox Code Playgroud)

撤销订单会扭转工作:

public <T extends Enum, ConfigFeature> void showEnabledFeatures(Class<T> enumType, long mask) {
    List<T> list = Arrays.asList(enumType.getEnumConstants());
    list.forEach(item -> {
        // My interface's method, doesn't work now
        // item.getMask();
        // Enum method now works:
        item.ordinal();
    });
}
Run Code Online (Sandbox Code Playgroud)

有没有办法从接口和Enum访问这两种方法?

java enums

15
推荐指数
3
解决办法
1577
查看次数

Python字符串是否以终止NULL结尾?

Python字符串的末尾是否有特殊字符?就像它在C或C++中是\ 0.我想在不使用内置len函数的情况下计算python中字符串的长度.

python

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

Webpack dev中间件反应热重载太慢

我有一个简单的配置,webpack-dev-middlewarewebpack-hot-middleware使用热重载(HMR)与反应.

一切都工作正常,除了我对代码所做的每一次更改都需要2到3-4秒!直到我在浏览器中看到它.难道我做错了什么 ?它应该是这样的?

我的代码相当大,我的捆绑缩小到841kb(200kb gzip)这是原因吗?代码库越大,捆绑创建速度越慢?

Express Server:

var webpack = require('webpack');
var webpackConfig = require('./webpack.hot.config');
var compiler = webpack(webpackConfig);

app.use(require("webpack-dev-middleware")(compiler, {
  noInfo: true,
  publicPath: webpackConfig.output.publicPath,
  watchOptions: {
    poll: true
  }
 }));
app.use(require("webpack-hot-middleware")(compiler, {
  log: console.log,
  path: '/__webpack_hmr',
  heartbeat: 10 * 1000
 }));
Run Code Online (Sandbox Code Playgroud)

webpack.hot.config.js

    const path = require('path');
    const webpack = require('webpack');

module.exports = {

context: __dirname,
entry: [
    'webpack-hot-middleware/client?path=/__webpack_hmr&timeout=20000',
    './src/js/index'
],
module: {
    loaders: [{
        test: /\.jsx?$/,
        include: path.join(__dirname, 'src/js'),
        //exclude: /node_modules/,
        loader: 'react-hot!babel'
    },
        { …
Run Code Online (Sandbox Code Playgroud)

express reactjs webpack-hmr webpack-hot-middleware hot-module-replacement

12
推荐指数
2
解决办法
5189
查看次数

为 CompletableFuture 创建一个通用数组

我需要创建一个通用的CompletableFuture对象数组,以便我可以将它传递给CompletableFuture.allOf方法CompletableFuture来同步线程。但由于它是通用的,我无法创建它。一个明显的解决方案是创建一个 List 然后调用toArray它,但效率很低。有没有更好的方法?这是我的代码:

// Current solution: 
List<CompletableFuture<List<ReportComparable>>> newReports = new ArrayList<>();

// Loop and add CompletableFuture objects to this list

// Collect all the retrieved objects here(Sync Threads).
    try {
        List<List<ReportComparable>> newReps = CompletableFuture.allOf((CompletableFuture<?>[]) newReports.toArray()).get();
    } catch (InterruptedException | ExecutionException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

java generics java-8

8
推荐指数
1
解决办法
5622
查看次数

Firebase托管的身份验证

我在Firebase托管上托管了一个静态应用,其后端也在Firebase上(使用firebase JS api进行通信)。我想向该网站的所有页面添加一个简单的身份验证页面,以便只有我想要的用户才能访问该网站。这可能吗?

查看了文档,但没有找到任何可以帮助我的方面。

firebase firebase-hosting firebase-authentication firebase-realtime-database firebase-security-rules

6
推荐指数
2
解决办法
4581
查看次数

存储图像?云上的数据库或文件系统

我正在构建一个必须存储图像的照片共享应用程序.所以我正在考虑使用Azure移动服务来存储用户数据和指向存储在Azure存储中的图像的链接.我认为这种方法的问题是,如果图像被修改,可能没有参照完整性.

这是一个很好的方法,还是我应该将这两个存储在数据库中(这种方法更昂贵,货币化).

PS:图像是使用移动相机拍摄的标准图像.

database azure azure-storage azure-mobile-services

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

从角度控制器外部控制器设置范围变量

是否可以从控制器外部设置控制器的$ scope变量?

例如,如果我有一个控制器:

app.controller('citySelectCtrl', ['$scope',function($scope){

}]);
Run Code Online (Sandbox Code Playgroud)

以及具有事件处理程序的全局范围中的函数.现在我想$scope在事件发生时设置一个变量.可能吗?我的全球职能:

function initAutocomplete() {
    autocomplete = new google.maps.places.Autocomplete(
        /** @type {!HTMLInputElement} */(document.getElementById('autocomplete')),
        {
            componentRestrictions: {'country': 'in'},
            types: ['(cities)']
        });
    map = new google.maps.Map(document.getElementById('map'), {
        center: {lat: 22.5937, lng: 78.9629},
        zoom: 5,
        minZoom: 5
    });
}

autocomplete.addListener('place_changed', function() {
    infowindow.close();
    marker.setVisible(false);
    var place = autocomplete.getPlace();
    if (!place.geometry) {
      window.alert("Autocomplete's returned place contains no geometry");
      return;
    }

    // If the place has a geometry, then present it on a map.
    if (place.geometry.viewport) {
      map.fitBounds(place.geometry.viewport); …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

不使用附加程序的 Log4J 记录器

如果我有一个用于初始化记录器的 log4j.xml 文件,其中foo定义了 logger( ),但appender-ref其中没有任何标签,那么该记录器会做什么?如果什么都不做,对性能有影响吗?

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
  <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
    <param name="Target" value="System.out"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%-5p %c{1} - %m%n"/> 
    </layout> 
  </appender> 

  <logger name="foo">
    <level value="WARN"/>
  </logger>

  <root> 
    <priority value ="debug" /> 
    <appender-ref ref="console" /> 
  </root>

</log4j:configuration>
Run Code Online (Sandbox Code Playgroud)

java logging log4j

5
推荐指数
2
解决办法
2608
查看次数